Инвесторы из фонда «Shut Up and Take My Money» решили попробовать себя в новой области и открыть заведение общественного питания в Москве. Заказчики ещё не знают, что это будет за место: кафе, ресторан, пиццерия, паб или бар, — и какими будут расположение, меню и цены.
Цель: исследовать рынок Москвы, найти интересные особенности и презентовать полученные результаты, которые в будущем помогут в выборе подходящего инвесторам места.
Задачи:
Описание данных:
moscow_places.csv:
# импортируем библиотек
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from matplotlib.ticker import MultipleLocator
pd.set_option("display.float_format", "{:.2f}".format)
import warnings
warnings.simplefilter('ignore')
import plotly.express as px
import plotly.graph_objects as go
import folium
from folium import Map, Choropleth, Marker
from folium.plugins import MarkerCluster
import datetime as dt
import json
import re
# задаем стиль графиков
sns.set_style('whitegrid')
sns.set(rc={"figure.dpi":200, 'savefig.dpi':300})
sns.set_context('notebook')
sns.set_style("ticks")
# загрузка данных
try:
df = pd.read_csv('/datasets/moscow_places.csv')
except:
df = pd.read_csv('moscow_places.csv')
def df_information(df):
print('Изучение данных:')
display(df.head())
print('*'*50)
print(df.info())
print('*'*50)
print(df.describe())
print('*'*50)
print('Количество пропусков:')
print(df.isna().sum())
print('*'*50)
print('Количество дубликатов:')
print(df.duplicated().sum())
df_information(df)
Изучение данных:
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | WoWфли | кафе | Москва, улица Дыбенко, 7/1 | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.48 | 5.00 | NaN | NaN | NaN | NaN | 0 | NaN |
| 1 | Четыре комнаты | ресторан | Москва, улица Дыбенко, 36, корп. 1 | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.48 | 4.50 | выше среднего | Средний счёт:1500–1600 ₽ | 1550.00 | NaN | 0 | 4.00 |
| 2 | Хазри | кафе | Москва, Клязьминская улица, 15 | Северный административный округ | пн-чт 11:00–02:00; пт,сб 11:00–05:00; вс 11:00... | 55.89 | 37.53 | 4.60 | средние | Средний счёт:от 1000 ₽ | 1000.00 | NaN | 0 | 45.00 |
| 3 | Dormouse Coffee Shop | кофейня | Москва, улица Маршала Федоренко, 12 | Северный административный округ | ежедневно, 09:00–22:00 | 55.88 | 37.49 | 5.00 | NaN | Цена чашки капучино:155–185 ₽ | NaN | 170.00 | 0 | NaN |
| 4 | Иль Марко | пиццерия | Москва, Правобережная улица, 1Б | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.45 | 5.00 | средние | Средний счёт:400–600 ₽ | 500.00 | NaN | 1 | 148.00 |
**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 8406 entries, 0 to 8405
Data columns (total 14 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 name 8406 non-null object
1 category 8406 non-null object
2 address 8406 non-null object
3 district 8406 non-null object
4 hours 7870 non-null object
5 lat 8406 non-null float64
6 lng 8406 non-null float64
7 rating 8406 non-null float64
8 price 3315 non-null object
9 avg_bill 3816 non-null object
10 middle_avg_bill 3149 non-null float64
11 middle_coffee_cup 535 non-null float64
12 chain 8406 non-null int64
13 seats 4795 non-null float64
dtypes: float64(6), int64(1), object(7)
memory usage: 919.5+ KB
None
**************************************************
lat lng rating middle_avg_bill middle_coffee_cup chain \
count 8406.00 8406.00 8406.00 3149.00 535.00 8406.00
mean 55.75 37.61 4.23 958.05 174.72 0.38
std 0.07 0.10 0.47 1009.73 88.95 0.49
min 55.57 37.36 1.00 0.00 60.00 0.00
25% 55.71 37.54 4.10 375.00 124.50 0.00
50% 55.75 37.61 4.30 750.00 169.00 0.00
75% 55.80 37.66 4.40 1250.00 225.00 1.00
max 55.93 37.87 5.00 35000.00 1568.00 1.00
seats
count 4795.00
mean 108.42
std 122.83
min 0.00
25% 40.00
50% 75.00
75% 140.00
max 1288.00
**************************************************
Количество пропусков:
name 0
category 0
address 0
district 0
hours 536
lat 0
lng 0
rating 0
price 5091
avg_bill 4590
middle_avg_bill 5257
middle_coffee_cup 7871
chain 0
seats 3611
dtype: int64
**************************************************
Количество дубликатов:
0
hours, price, avg_bill, middle_avg_bill, middle_coffee_cup, seats. На данном этапе не будем ничего удалять, чтобы не исказить результаты исследования.print(df.duplicated(subset=['name', 'address']).sum())
0
df['name'].value_counts()
Кафе 189
Шоколадница 120
Домино'с Пицца 76
Додо Пицца 74
One Price Coffee 71
...
Донер & клаб 1
Буонамичи - Итальянский ресторан - пиццерия 1
КП МЭИ 1
Guru 1
Вафли, крепы, два яйца 1
Name: name, Length: 5614, dtype: int64
# Уберем апострофы и приведем все названия к нижнему регистру
df['name'] = df['name'].str.replace("'", "").str.lower()
df['name'].value_counts()
кафе 189
шоколадница 120
доминос пицца 78
додо пицца 74
one price coffee 72
...
донер и бургер 1
cedro albero 1
смартфуд 1
подсолнухи 1
чайхана космос 1
Name: name, Length: 5511, dtype: int64
#поищем дубликаты по совпадению наименования и адреса
df.duplicated(subset=['name', 'address']).sum()
3
#посмотрим данные дубликаты
duplicates = df[df.duplicated(subset=['name', 'address'], keep=False)]
duplicates
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1430 | more poke | ресторан | Москва, Волоколамское шоссе, 11, стр. 2 | Северный административный округ | ежедневно, 09:00–21:00 | 55.81 | 37.50 | 4.20 | NaN | NaN | NaN | NaN | 0 | 188.00 |
| 1511 | more poke | ресторан | Москва, Волоколамское шоссе, 11, стр. 2 | Северный административный округ | пн-чт 09:00–18:00; пт,сб 09:00–21:00; вс 09:00... | 55.81 | 37.50 | 4.20 | NaN | NaN | NaN | NaN | 1 | 188.00 |
| 2211 | раковарня клешни и хвосты | ресторан | Москва, проспект Мира, 118 | Северо-Восточный административный округ | ежедневно, 12:00–00:00 | 55.81 | 37.64 | 4.40 | NaN | NaN | NaN | NaN | 0 | 150.00 |
| 2420 | раковарня клешни и хвосты | бар,паб | Москва, проспект Мира, 118 | Северо-Восточный административный округ | пн-чт 12:00–00:00; пт,сб 12:00–01:00; вс 12:00... | 55.81 | 37.64 | 4.40 | NaN | NaN | NaN | NaN | 1 | 150.00 |
| 3091 | хлеб да выпечка | булочная | Москва, Ярцевская улица, 19 | Западный административный округ | ежедневно, 09:00–22:00 | 55.74 | 37.41 | 4.10 | NaN | NaN | NaN | NaN | 1 | 276.00 |
| 3109 | хлеб да выпечка | кафе | Москва, Ярцевская улица, 19 | Западный административный округ | NaN | 55.74 | 37.41 | 4.10 | NaN | NaN | NaN | NaN | 0 | 276.00 |
Видим, что данные записи являются дубликатами, однако в них расходятся категории заведения, возможно это просто ошибка при сборе данных
rows_count = df.shape[0]
print("Первичное количество строк:", rows_count)
# Удалим дубликаты по столбцам name и address
df.drop_duplicates(subset=['name', 'address'], inplace=True)
# Проверим
rows_count_2 = df.shape[0]
print("Количество строк после удаления:", rows_count_2)
print(df.duplicated(subset=['name', 'address']).sum())
Первичное количество строк: 8406 Количество строк после удаления: 8403 0
# Преобразование уникальных значений в список и объединение их в одну строку
unique_names = df['name'].sort_values().unique().tolist()
all_names = ", ".join(unique_names)
len(all_names)
72354
# вывод уникальных значений
unique_names = df['name'].sort_values().unique()
for name in unique_names:
print(name)
#кешбэккафе +39 pizzeria mozzarella bar 1 этаж 1-я креветочная 10 идеальных пицц 1001 ночь 100ловая 100лоффка 13 13 chef doner 15 kitchen+bar 15-й шар 16 июня 16 тонн 18 грамм 1901 comfort food zone 1у 2 типа 2-й этаж 2046 21 век 22 акра кофе&хлеб 2u-ту-ю 3 ступени 351 bar 4 сезона 4.2. bar 4/1 restaurant 42 coffee shop 47 495 4friends coffee 4tuna cafe&grill 5 stars coffee 55.709201, 37.392257 6 am bread kitchen 6 рукопожатий 69 раков 7 сэндвичей 7 элемент 7/12 8 oz 8 вафель 8 зёрен 8 пончиков 800°с contemporary steak 8bit pizza 9 bar coffe 9 bar coffee 9 зёрен a-cafe abc coffee roasters acai family accent adams chicken adria mare ahava air coffee al halal al33 пиццерия бар боттега all day alma alternative coffee aly’s poke amande amarena americano black coffee & food amg cafe ami chaise amore grande amsterdam bar andy coffee angel cakes city angel cakes patriki ann joy anri bakery antalya anvil cafe aq kitchen aquarium arabix arch 1908 archie arcus bar and food armibaker aroma art & horses art coffee club art de vie art-rco art-буффет arzon arzon food asia gourmet asiatique kitchen x bar asparago assa atelier de tartelettes atilla atlantica seafood autostory ava avenue 32 avgust рыбный ресторан avkvadrate avocado point avoday coffee and tea b&b bradu bar b&d cafe b. r. b. скоровернусь b1 coffee&goodies ba dinh baba napoli babacha baci abbracci baer coffee bagetti bake&coffee bakery bakery mart balabowl balance balanceat baleno bali lounge bando bao+noodles bar bq cafe bar park 15 bar zero time barbacoa barmalini barra cholo bassg baza bb grill bb&burgers bbcafe bbq kitchen bbq kitchen 2.0 bbq point beauty pub beautyfood cafe beer & brut beersenev bar bellissima benedict berenj bericoni berry fruit vitamin & fresh bar berta bespoke cafe between beyoglu shef doner waffle beze зиларт beze ривер парк bfl’s bierлога big black cup coffee big city big jims pub bigсуши billy mcdaniel bistro ostro bitter drop bizi bizone lounge итальянская кухня bklyn: brooklyn pizza pie black & white lounge black star burger black stone black thai black молоко blanc blau blinicoffee blink seafood blizz cafe&bar bloom coffee bloom-n-brew bloom-n-brew baum bloom-n-brew factoria bluefin sushi nikkei & seafood bm bo food bo&ga bo-bo lounge bob’s your uncle bocconcino bodrero bodro coffee bollo bollywood bolognetta osteria&pizzeria bon lavash bonjour bonne cantine booblik bora bora boss doner boston seafood & bar botteganova organic boulangerie bowl family bowlme bowlroom bổ bradu bar brancho brasserie lambic brasserie stout bravos bread and butter bread head bread пит breadville breakfast cafe breakfast hunters breakfast so tasty brera brick bright israeli grill brisket bbq brix bro bar bro&n brodo bar & kitchen brooklyn cafe brooklyn coffee brooms bros burritos brownie mama brrrew! brunch cafe bruxx buba by sumosan buba mara bubbasheri buddy bar bufet buffet bull meat bulldog bar bulldog coffee bunker pub beer buon burger club burger heroes burger shaw burgers and crabs but first coffee bổ café sicilia cafe cafe & пельменная cafe 13 cafe 55 cafe aprile cafe imperial cafe inn cafe pantheon cafe racer cafe sunset cafe the slim cafe vecher cafe&bar cafe13 cafeterius simple caffa caffe diemm caffe galliano caffe mandys caffeterria caffetteria cafio café 1892 café arizona café by interoptika café de paris cake oclock cake time calma! camera obscura camorra pizza e birra campus canteen cantina city cantina city free flow cafe cape capito capo pizza & pasta captain gyros cargo cafe carrots and beans casa del caffe casa di famiglia casa leone caspian cassette cafe catch catcher ccups cedro albero cezve coffee cha cha chanh chat noir cheesemania chef cat chef express chekhoff cafe & bar chicha san chen chicken father chicken mania chicken planet chicko chiken king shawarma china club china life china palace chindi kitchen chinese market chips chipsnkale chou do chowder&pie christian christopher. co cinnabon city friends city life city lunch city space bar & restaurant clean clever coffee clubpizza co/co coffee&cozy coba cobalt coffee cochonnet cof кофе cofair cofan cofe fest cofefest coff home coffee coffee 42 coffee and the city coffee bay coffee bean coffee bistro coffee boy coffee break coffee brothers coffee buro coffee combo coffee drop coffee first coffee fm coffee frisbee coffee garden coffee gate coffee guru coffee in coffee inn coffee itself coffee joy coffee king coffee like coffee me coffee miru coffee moose coffee music coffee party coffee place coffee point coffee pulse coffee religion coffee sova coffee supreme coffee to go coffee vibe coffee way coffee week coffee пирапора coffee&croissant coffee13 coffee_molka coffee_spark coffeebar17 coffeebara coffeebrain coffeefox coffeehub coffeeist coffeeizm coffeekaldis coffeelovers coffeepie coffeeshop company coffeeshots coffeesphere coffeeteabar coffeewinner coffeewins coffeewood coffeeтут coffelab coffeplet coffezdes coffprice coffta cofix color хот-дог colorcoffee come a casa comme a paris community compass coffee&bakery conversation cookkareku corner cafe & kitchen corner cafe&kitchen corner coffee roasters correas corso coffee cosmic coffee cosmic latte cosmos lounge cotto country coffee cousins coffee craft buffet craftburgers crazy fish crazy kitch brothers crazy noodle cream soda crema creperie de paris crisper crop. coffee & smoothie bar crosseat crosta crystal cafe made in georgia cubby cultura coffee cup & chin cups&hugs curry cvc китайская кухня cyber saray cépage kitchen & bar dada daft rabbit pub dai viet damil danell’o pizza dark patricks pub david b cafe dcs de bassus de village deep fried friends deli by shell deli2go delimarche dellos corporate service delonixcafe demi coffee shop demokrat dereza deti lapshi devino di villaggio dimsum & co dinnertime dip with me dirty dance district dizengof99 do. bro coffee dobryakova bakery dolce & gamarjoba dolce far niente doner & tantuni doner 24 doner mania doner one doner pro donna maria dopamine salad shop dormouse dormouse coffee shop double axe double duck dr. coffee dr. живаго dracoffeestar dragon bubble tea dragon mixology bar drama cafe dream bar dream food drink eat travel drive drive cafe drive café dubai meal duckit dudu dunkin donuts dон хулио e. d. a. e. s. coffee eastoria eastwoods easy brix easy food easy pizza eat & talk eat market алкон eat street eat&enjoy eat&play eataly eateria паста&пицца ecle eco шаурма eda premium eggsellent ekspress kafe ela element coffee elephantkids eleven coffee encore cafe entree erwin рекамореокеан eshak eshka espressium espresso bar espresso patronum espressoroom essthetik estetica estetica cafe etmix eva everest coffee ex: libris express express кафе extra virgin eywa art fabbrica. pasta & panini falafel bro falko pizza family bakery family cafe family cafe mayak family club family ресто-бар fan cafe fan zone farang farn house farro pasta bar farш fast soup fast шашлык fastshashlik fayz feifan festa & тесто festa&тесто fibbee fibo pasta & ravioli fika financier finch fine coffee bar fire fire burgers fire lake first&only fish bistro fish культура fishbazaar fishman fishop fit appėtit flaner flashburger flat white fleur flip floo florentini florentini city cafe fluffy fluffy fly coffee foil food embassy food galaxy food low cost sushi food market красная роза food story food street. рассвет food way foodband.ru foodkido foodmoscowcoffee foodpoint foodstep foody foody for by friends for you for you coffee lab for your kids forest lounge fos fox foxler art & lounge frame wine & bar frank by баста frankie pizza free & со free&co freedom bar french bakery french bakery sedelice fresh fresh cafe fresh coffee bar fresh food fresh for you fresh for you & cofe fresh шаурма fresh-doner fresita pizza freya friends friends & family friends forever friends forever botanica friends social club from berlin fruits and veges fruitsberry fry’d fun ny duck funky lab g&m g. bakery8 gabs&co gagawa garage garage café garden cafe garret garum gastro room gastrobar gastrobistro zola gayanes gelati gem genso sushi gentle gentleman coffee georgia хинкали georgian garden georgian house get and fly gimme coffee ginger cafe&fitnessbar glastonberry gloria pizza glowsubs go dragons go! кофе gold gold 312 golden coffee goncharov goodbro kitchen goodfood gourmet lunch grabn go grace bistro grace pizza grand cru grand family grand-cafe grano grao de cafe grape grape wine & kitchen grapefruit great room bar greek street green park sokolniki green pub green v. a. i. greengo bar зеленая лавка grey grill bar crafted grinvich coffee room gross coffee gt. coffee guests in the city gumps guns & bears gurmanoff guru gustolife gutai gvido gelato gøg gастроном habit hagao halal halal food han cook hands asian bistro hang pho hanoi hanoi food&drinks happy cup club harat’s pub hard rock cafe harvest cocktail bar hatimaki hayot heavy еда hello kitty hellopapaya helltower57 help driver hills hite ho cho pho ho chu pho holder coffee holi yoga & cafe holy berry home homies cafe hong kong hop gun bar horendin hot dog bulldog house mafia howard loves craft hq! coffee hudson deli humpty dumpty i coffee i do the kitchen v. 2 i like wine i like wine 2.0 i love cake i need doner i-chef i-chef бистро i-coffee. me i-cup i-tal corner ibis kitchen ice embassy id cafe ikigai il barolo il borgo il forno il letterato il mio il pittore il pizzaiolo il tocco il tomato il патио illy impress introvert. place ipho cafe ippo iq coffee iq кофе istanbul istanbul kebab istanbull house iteam coffee its сот - кофейня its сот-кофейня ivoire café izakaya j&j cafe moscow ja-jo jamamai asian kitchen & bar janis cafe japcake jaya jaz-jiz jedi coon jeffreys jeffreys coffee jeffreys coffeeshop jeffreys кофе и сидр jeffrey’s coffeeshop jinju joe pizza john gilroys pub johnny lee pizza & halal food jolene joon jpan julibon cafe jungle brothers just just coffee k-town k-town korean bbq kafin kaif provenance kalabasa kano karavan karma coffee kathrin’s bakery kavabanga-food kaya coffee shop kebab time kebabs kenza khait food kikidze killfish kimpab kinohome kiosk 11 kiosk 1936 kitchen kitchen for you kitsune kle_do cafe knockout coffee koi nori koji kojiro kollektiv kool i cha korean chick koreana light kraskovka krispy kreme ku: рамен изакая бар kulinari kuma to sakana kurkuma kurnik kuzina kuzu kebab kvartal kvartal green garden l cafe la bellezza la bulka la cafe la capitale la casa la maroush la mortazza la pausa la pizza bomba la provincia la taverna la veranda la verona la vie café la villa la вилка lacabana-africana laffa laffa lalaland lamadjo lamm’s lancheria artplay langet lao lee плешка larionov larry&krabs lars vegans laserland кафе latteria1963 lav cafe lav шашлык lava pizza lavanda lavash lavazza lavaш lavburger lawanda store lay bay layerz bakery le chaton gris le petit paris le procope du matin le круассан leffe cafe lele kitchen & wine leocoffee leon les lets rock levant/شام levin bakehouse life food lift coffee & grill like burger&pizzetta like cafe lino lion lisobon little panda cafe littles kids play cafe living room lobby local local kitchen locals loft 45 loft-cafe академия logovo lollo loo chi lori bar loro lostbar louis fusion lounge bar love lavash love&eat lovers lucky bakery lucky cheese pizza lucky eye lucky eye. ближневосточной lounge bar lucky izakaya bar lumicino lunch lunch point lunch&box lunchcity lure oysterbar lusys pizza lutom lyanson’s coffee ma chere bistro mac & cheese macadamia mad season mad wine bar madam yen madison restaurant & club maestrello mafe magaria magic coffee main food mainfood mamamai mamma mia man gal mandarin combustible mangal house mango gril mannys burger mansard restaurant and hall manufaktura margarita marie marketplace marks choice marmi maroon marrakesh martinez marx urban grill mashup masseter kitchen&bar mastersuit cafe matcha bar matreshka max bakery max level maximus maya mañana maппа meal pleasure meat doner kebab meat me meat street meat лав meat&more meatлав medusa asian kitchen bar mega coffee mellman’s coffee mendia menza meow bar merani method beer & munchies mfc foods mg food mi casa milk&beans minimarket minne ze mooshe mio palermo miragrill misha fisher mishka vodka balalaika mission • ethical space mister falafel mmoma cafe mnoga mocco lounge modus restaraunt mokko mollusca molon lave molto bello momentto monkey pizza monkeys monks pub monso monte cristo monteview coffee monty cafe more poke moretto moriarty bar&kitchen moscof coffee moscow heart coffee mosweet mozzaika coffee mr coffee mr. ambar mr. brown mr. doner mr. help & friends mr. john’s mr. kebab mr. mike mr. колобокок mr. пи mr. уголёк mr. эdison mucho muine mukuzani murloftik mushrooms my neighbours cafe myration mátes mátes pizza mátes pizza&bar mũi né кафе mикссалат mẹ nấu nado coffee nafa grill nagoya namdin nashemesto naturality navat nd cafe ne-polezno.ru neapolitan pizza nef cafe neosantorini nero bean coffee roastery new normal new sushi neбо ngon ngon moscow nho nice to meat you nicepricecafe niki nino cafe niqa patisserie & cafe niqa patisserie & cafe tverskoy no name cafe noba coffee nobis nobo nomad nome non-gusht nonamecoffee nook coffee nord coffee nota bene nova bubble tea now caffe nude o.k. coffee oblacko ocean лав oda coffee odd odo sushi bar odonoghues pub office-club officina ogorod oh my david okra25 olive olympic omg coffee one and double one more time one more, please one price coffee one special one&double only coffee only wine lounge openfood opus origami origin osteria deluxe osteria mario osteria unica ozera ozzy p3 coffee pab&burg pacha mama. smoothie point pancho pandora lounge&shop papa grill papaya asian bistro paradise paradise place parfé cafe park 47 park cafe park point park50 parkhouse parle market pasta cup & pinsa pasta cup & pizza pasta pesto pasta&bar sicilia pastas & tapas pastfood persempre pastoria patriki paul pausa-caffe pberry petruccio. pizza&pasta petrushka pho pho 34 pho 73 pho best pho bo pho bo 365 pho bo ha noi pho bo ichiban pho capu pho city pho dat viet pho fighters pho hanoi pho ly quoc su pho mos pho ngon pho nong pho oanh pho street pho u pho viet pho you pho ханой pho № 1 pho29 phobo phoplus phou phở bò nam định piazza italiana piccolo coffee pickup coffee, сеть picnic cafe pims pinch pinky pinsapositana pinzeria by bontempi pioner’s pioppo albero pique-nique pirogi-diana.ru pita burrito pitbull_cafe pitch pizza & pasta 2bros pizza amore pizza cafe pizza express 24 pizza hut pizza mafia pizza point pizza sole pizza time pizza wine pizza24/7 pizzabomba pizzahhh! big city pizza! pizzaloca pizzamore pizzateka pizzeria 360° pizzeria grento plates platforma playce plaza garden cafe plov project plov time plov.com ploveberry point 242 poke house poke&tomyum pomodoro royal powerhouse pq coffee&friends pratto pizza prawn bar prawns premiere cafe pride pride coffee prime prime cafe prime mart pro порции pro хлеб pro. хинкали profitrolly profitt prolunch promenade lounge pronto pizza proжарка pub the slim punto zero quan viet quanto basta quba que me qui terra caffe r&bs роллы и бургеры r1812 raf&gotovo rai ramen ramen & wok by gaijin ramen+noodles raw to go raw to go kitchen rca cafe rd cafe red cafe red cat pub red mug redgo redwood region 05 relax lounge remedy junk food family remy kitchen bakery rest rfr гриль ribambelle сердце столицы ricers ricks bar & bistro ride the coffee rigel city cafe right habits rioba rishon riverfood · любовь есть riverside river’s. bar гастробар rock-n-roll rockets coffee roma pizza coffee romashoff royal coffee royal hookah royal шаурма rozie bakery rumi ruski russian media cafe rustic pizza rusty ryabov coffee ryba kit rébellion clubhouse moscow rиmline sabbia saigon bistro. вьетнамская кухня saigon вьетнамская кухня saimon salad bar salateria saltenas sambusa sandwich sangre fresca santo pan saperavi saperavi cafe sarona sattva sayyora ops scirocco scramble scrocchiarella sea-тория seabus sushi seafood bar море море sedelice self cafe sempre sendai senza nome senza titolo serbiя sergio pizza seven sevilla cafe sha&bo shagal shagdi shake up shakeup shan shan shao la shaverma house shawarma shawarma vip house shawarmaji she shelby shifuku sushi shirshov shlomos shrimp kitchen shwarm siam sigma signature signora simachyard simple single sio sisters sito sixty ska vi fika? skulptor burger doner skuratov, coffee roasters sky bar sky food cafe skyline slava smile cafe smoke bbq smoothie & coffee sodexo sok sole e luna osteria italiana solopizza solotreid soluxe club sonata japan kitchen soroka bistro sos. cafe soul in the bowl soul seoul sova coffee spacefood cafe spoon&dagger sport bar sport club g5+ spot spot poke & bowls spot4 sreда st cultura stairs staks stand up патрики standup cafe star star catering star hit cafe stardogs starfix cafe starlite diner staya cafe&bakery steak it easy steel bar & kitchen stim coffee stone crab bar&restaurant stopexpress stories streat street coffee street food street food № 1 students spot мфюа styling bull cafe sub cafe sue coffee sugarbey sultan pizza & burgers suluguni summer love frozen yogurt sun stek sunshine coffee super food supernova surf coffee x akademik surf coffee x amen surf coffee x flat surf coffee x highway surf coffee x lips surf coffee x lovely surf coffee x otto surf coffee x sababa surf coffee x secret spot surf coffee x shine surf coffee x sport surf coffee x studio surf coffee x takeoff surfnfries sushi booffet sushi case sushi city sushi man sushi-das.ru sushiball sushime sushito club sushitop suшi sweet life sweet market symposy wine&tapas synergy 2 go synergy cafe taam hummus bar taam hummus bar 2.0 table table one taco time tacoco taim take and wake taksim talenta food tandir&пекарня tandoor tapuz tarcofsky tasty joys tasty thai teahiro teapoke teff temple bar tempo pizza tennis cup кофе tequeño mucho testa testo testo мания tgi fridays thali & dosa the bassein the best burgers the buffet the coffee club the first cup the forge the fox pub the garden grille & bar the green yard the hummus the istanbul the lavash the library bar the loft cafe & lobby bar the maple bar the rooms cafe the waterfront the wild bean cafe the zavtrak the бык the вареники the лес the море thebestcafe three tuns pub tianya tidö-lindö tigerbunny tilda food & bar time to coffee timntim tina tine tizzu coffee tkachi toda pizza tokpokki tokyo tom вьетнамская кухня tomatino tomorrow top java torro grill torsher tortbar.ru tortugas toscana market touch of matcha tour de france trattoria fornetto travel рестобар travelers coffee tropic coffee true cost true cost никуда не едем trübli-bar tsingtao tsomi tu ton tuck in turkish street food turnisol light tuscany courtyard tutti pizza twice u: cafe udcкафе udcкафе upside down cake udon & soba ugolёk uhvat uilliams umami ramen bistro united catering group, офис united kitchen unlock cafe untitled upside down cake urban uzbek gourmet uzplov-halal vabene van house vani vanwok varka. кофе vasilchukí chaihona №1 vasyasya vcafe vegolife vegom vera coffee&tea veranda veranda grill cafe vergnano very well vi cafe via nave trattoria via pомано via rinaldi vibe vibes cafe vice burgers victoria & albert viet cuisine viet ngon viet quan vietday vietnamese view vigor maker viki cake villaggio vintage vip wok & sushi vip wok and sushi vivians vivo cafe vostok vse-em vtandir.ru vua pho vvvoffice vzlet vаниль vместо sushi vоdный waffle & pizza wagmi wake up wake up cafe wakecup coffee wasabi wasabi, суши-бар wave california poke wbc we cidreria well doner wellness cafe wells home cafe white cafe white fox white fox cafe white rabbit wild bean wild bean cafe wild kitchen wildschwein will taste william bass wine religion winewood lounge winners wino bar wip wiwa coffee wok & box wok & рис wok box wok pho mi wok-бангкок woka noodles wokker won cha workout bar wow street food wow пицца wow! шаурма wowфли wtfcoffee wаурма x-ti гастробар xaliflife xiv xpresso ya-cafe yaki duck yammy yasha yasha gourmet ycp yoshimi you&coffee youtime yumbaker gardens yumbaker home yummy duck yura restaurant & bar z кафе za paru zacoffee zafferano zagorami zames zbs eat zemlya moscow zerno zest coffee & wine zeкафетерия zeфир zeчайхана zintea zm coffee zoo beer & grill zoo canteen zotman pizza zotto zvon zамания zаправка zефир études café а ты поел а я кофе а-ля-карт а. ф. кони абад абракадабра абрамово абрамовъ абу гош ав гранд-кафе август13 аве паста авеню 14 авилон авлабар авокадо авокадо поинт автосервис у рустама автоспастудия агат 24 адажио аддис-абеба аджика аджика чили адыгская кухня азарика азбука daily азбука кофе азбука питания азербайджан азербайджанская кухня азиаты азия mix азия микс азия+ аист ай бург ай эм конфидент айан айва айдабаран айоку айран академическое академия академия шаурмы акбаш акваименс аквафортуна актавест актер ала арча алаверды аладдин-системс алазани алазанская долина алали алекс александр али-баба алибаба донер алиби алиса алия кафе алкобулочная алло пицца алло! пицца аллора пицца алохапоке алталия алтан булаг алтаргана аль баракат аль бухари аль-барака аль-бухари аль-маида альбатрос альпини алёнка амадеус амазония амбарчик аммбар аморет аморино ананури анас андерсон андерсон на даче анджело андиамо андрбар ани анис анненфельд аннино 24 анор шаурма ансар анталия анталья антик антикафе антикафе time club гнездо антилопа антон антонина антонио апельсин аппо апполон апрель арамье арарат арахис арго ареал арена ариэль арка арма craft армако армянский переулок ароматная река арт ланч арт меню арт-кафе рукав арт-кафе сахар артель арти артико артмелон лайф артпирогъ артэго арцеу аршин аспендос асса food астория атмосфера атмосфера хинкальная атриум афган-кебаб афросиаб ах... плов ача-чача аченти ашан ашлянфу № 1 аэлита аэро-кафе аэрофоб&я аё б12 баам-кафе баан тай баба марта бабл дабл бабл ти бабуев фу бабушкин буфет багратион багратиони бадахшан баже база база стритфуд базил базилик бак бо бакинский дворик бакинский очаг бакинский рай баклажан баку баку 24 часа балкан балканрест баловень бамбл кофе банг банг бансонс бургер китчен бар wild tony бар б кю окс бар слоны и мамонты бар, паб проточный бар-ресторан территория барkas бараshka барави баракат баран в казан барбарис барбариста бардак барик брю бариста стайл барокат баррейро барс барслона барчук басманный парк батон батон кофетон батони баттерфляй баффет бахытик башлам баяр беби джоли бегония-л бедия без повода без рецепта in friends social club бейрут бейрут экспресс бек&бургер белая птица белла чао белла чао пицца и кофе беллини белое озеро белорусская хата белочка белуга белые облака белый белый журавль белый лебедь бельгийская брассери 0.33 беляшерия бенвенуто бентомания берег березка беру! шашлык берёзка беседка бестужев бибирево библиitека библиотека shisha lounge библиотека бар библиотека путешествий бизнес-кафе бик кау бико билал бими бинсу био кафе бир лофт биродром бирсайд бирхаус бирхеванс ресторан бар бирюса бистро бистро 2 бистро 24 бистро 5 бистро локал бистро столовая № 1 бистро хинкальная бистрот бишкек бишкек сити блан де блан блеск блин & джем блин есть блин ешь блинбери блинвуд блинная блинотека - блины и вафли блинс кафе блины блины. кофе. пианино блонд & брюн блэк милк блюр лаунж бар бобры бобры и утки бобс кофе бодрум бодрый день бодрый макс бол бол фуд больше, чем кофе большой большой фо бон вояж бонархитект боорсок бор ресторан борго бота ботаника бохо лаундж боцман бочка боэми бранч брассери брюссель братец кролик братья гримм братья грузины бриошь брокофе брускетта и... брусника брюс бар буlки будни буйабес булка булкер булки булочная булочная № 5 булочная, пекарня булошная булошная № 1 бульбяная бульвар бункер кафе буонамичи - итальянский ресторан - пиццерия бургер & кофе бургер & фрайс от мираторг бургер mix бургер бокс бургер иван бургер кинг бургер клаб бургер х@чу бургерная бургерная м & м бургерная шарик бургеры us пирожки бургеры и пиво parka bar буржуй буркина фасоль бута бар бута хауз бутерброд буфалино буфет буфет & обед буфет 24 буфет ботанического сада буфет винегрет буфет рокоссовского буфет-бар буфет-столовая южный порт буфетоф буфетрина буфетрина. 2 буффало буффет буханка бухара бухара чайхана буше буше на свободе быстро кафе быстрое питание бычьи яйца бьёрн бэль бэнтоки бюро пиццы бёргер стейк в гуще событий в окошках в парке вкуснее в парке вкуснее! в пите в самое сердце в своей тарелке в темноте вistro 3.6 вrasserie mardi gras вrazil steakhouse вав вагонъ вадваре важная персона вазян вай мэ! вайбс вайн рум галерея гурме вайт холл ван холл вангог центр ваниль ванильное небо ванильный шпатель ваня ваня и гоги варежка кафе вареничная № 1 вареничная №2 варим тепло варня кафе варшавский васильки вафли, крепы, два яйца вах гоги вах! хинкали! вахтанг ваш лаваш вднх вегетарианский фудкорт брокколи везувий везувио вектор вельвет венахи венд кафе бц электродный венская сказка венское веранда веранда 32.05 верба верд верди вереница верона верстак вертел вертел шаурма вершина 3003 вершина. еда веселая черепашка вескор весна ветераны фалафеля ветерок ветка вечера на хуторе виват пицца викрама виктория виктория и альберт виладж пицца вилла тифлис винил и вино винный базар винный бар шали вали винный ресторан la carta винный рынок вино вино в большом городе вино и еда by первый нос вино и море виновано винотека pion&pudra винотека, булочная, кулинария вино & кухня винтаж & ко виолино вителия вкинобар вкус вкус life вкус азербайджана вкус армении вкус внутри вкус востока вкус востока 24 вкус грузии вкус дня вкус жизни вкус индии вкус кофе вкус мяса вкус хаус вкус хлеба вкус шашлыка вкусвилл, кафе вкусико кофе вкусная грузия вкусная еда тут вкусная история вкусно вкусно как дома вкусно по-домашнему вкусное вкусное время вкуснота вкуснофф вкусные пончики ля пон пон вкусные традиции вкусный дворик вкусный ресторан вкусняша вкусняшка вкусняшки влавке владикавказ во сколько начинается аперитив? во! вкусный обед воблакевкуса водопад вок воккер вокруг света волга волга-волга волконский волна волчок вольность ворона воронцово восток восторг восточная звезда восточная кухня восточная ночь восточная сказка восточно-грузинская кухня восточное бистро восточные вечера восточный двор восточный дворик восточный караван, 1 этаж, пом. 115 восточный квартал восточный уголок восточный уют восход вотпуск вояж время для кофе время есть! время кофе время обеда время обедать время поесть время чудес все в сад все лень все по 60 все шашлыки всегда готов! встреча всё хоккей второе кафе вуди пицца вурстбар на шаболовке выдра кофе выжималка выжимка выпей кофе! выпечка выхинский дворик вьет вок вьет куан вьет лотос вьет-фо вьетnam вьеткафе вьетнамская еда фобою вьетнамская кухня вьетнамская кухня pho вьетнамская кухня фо бо вьетнамская кухня, китайская кухня вьетнамская уличная еда вьетнамское кафе вьетплюс газпром питание галата галерея галерея вкуса галилео галки галло пицца&бургег гамбринус ганга гандзак ганс и марта гао гараж гриль & кофе тайм гарланд гармония вкуса гастро бистро шаверма-братуха гастро-буфет гастро-буфет пабло гастробар гастробар brew kitchen гастробар cavina гастробар беловъ гастробар острог гастромаркет балчуг гастромаркет преображенский гастрономическая академия рожниковского гастрономическое пространство city food гастропаб svoy гастрорюмочная шесть you шесть гастрорюмочная шесть-you-шесть гастрофабрика гастроферма гвидон где еда гедонист гелена гемри&эли хинкальная генацвале география герои гивисациви гио главеда главпирог гладиатор глинтвейн глобус ресторан глобус, ресторан говяdина гоген_кафе гогиели гоголь-моголь голубка гончаровъ гор гораздо горизонт город 312 городок городские пекарни городское городское кафе 317 городское кафе и бар горожане горох горыныч горячая выпечка гости готика грабли гран торино пицца гранат гранат black гранатовый сад № 1 гранд гранд виктория гранд кафе 12 гранд фэмили гранд хлеб гранж кафе грейп кафе греки здесь гренки гренки пенки грех греческая кухня гречка гриль бургеры гриль дворик гриль и сувлаки гриль парк гриль хаус гриль&гирос гриль-бар puerto madero гриль-бар мясное дело грильпоинт грин лондон грин хаус гринби грот груzinsкий буffет грузинка грузинская домашняя кухня грузинская кухня грузинская кухня лело грузинская лавка грузинская пекарня грузинские традиции грузинский акцент грузинский бульвар грузинский дом у наны грузинский домик грузинское подворье груша грэмми грют гуава бар гуд стори гудбар гудман гурман гурман-кафе гурманика гурмэ ланч гусар гюмри хауз гёдза мазая д-кафе да еда да! блин да, еда даблби давайте карбонару дагестанская лавка дагестанское кафе бурка дадали даиси дайнинг холл дайтекофе дакстарс дарбази дарбарс дастархан дача дача гашека дача на варшавке два бобра два гуся два тандыра две печеньки две сестры двор дворик дворик невского де марко деви дегустационный зал арарат дежене дежнёв дека декафудс дела кофейные деликадесса делимарше делишес дельфин делюсь душой день сурка деревенское подворье десять шесть детиленд детская дача джаганнат джанни родари джардино ди пино джари джаста паста джеки джеки джем джи джи гриль джи-рэйс джимми ли джонджоли джорджио и джорджия джорджия джусто диана диана-2 диван диди диемм дижестив дизайн димина работа динамо династия дискурс добро пожаловать добродар добродомик офис добролавка добрыня додо пицца дозаж дойна cafe дока пицца доктор ватсон долина долина 5165 долина вкуса долина № 1 долмастер дом дом 12 дом 16 дом 8 дом 8а дом кебаба дом обеда дом пива дом плова дом татарской кухни дом хинкали домашнее домашние обеды домашний вкус домашний уют домашняя еда домашняя кухня домашняя кухня dетали домашняя пекарня домашняя столовая домик в саду доминос доминос пицца домовёнок кузя дон тантуни донер донер & гриль донер & клаб донер 24 донер 42 донер бистро донер бургер донер в пите донер дом донер и бургер донер и выпечка донер и гриль донер кебаб донер кебаб № 1 донер на пятерку донер пекарня донер поинт донер сити донер тайм донер тандыр донер у братишек донер хауз донер хаус донер № 1 донер-база донер-кебаб донер-сокол донер-тандыр донер-хаус донер-шашлык донер24 донеретт донерок донет турецкий донец кебаб донна маргарита допинг кофе дореми пицца дориан грей доставка еды и обедов доставка еды чайхона исфисор достонжон достор дрова и угли дружба друзья дубки дубровка дубровский дудук дхаба дымзавод дымок дэди дэди, кафе дэнди пицца дядька дядька кофе. картель дядюшка хо дядя джо дядя коля евразия евровосток еврокафе еда еда greek еда в стакане еда и немцы еда по-домашнему едаки едаки lunch елена ели сацебели ели шашлык елисей ем и ем ем-поем енисей енот есть есть хинкали & пить вино есть хинкали&пить вино есть, как есть естьпить ето ешь и гуляй ешь хлеб ещё одна собачка жarka жаворонки & совы жаворонок жажда жажда крови жан-жак жара жарим мясо жаркое жаровня парк горького жаровня-офис жасмин жемчужина жеральдин жестокий романс жи есть живое кафе живое пиво живой кофе жига дрыга жигулевское жигули жираф жирок жуир журфак за думой за обе щёки забыли сахар завод завтрак на обед завтраки загородный заказать шашлык на углях закарпатские узоры зам-зам замин зандукели запойзаешь заправка зар зарайский дворик зарафшан зарафшон зарина заря заряд кофе зарядка зарядье заяц и шляпа звездопад здесь точно кто-то ест.. много! здоровое питание здрасте зебо зелёная сила зелёный лис зерно рн-москва зефир зизифора зимний сад злачное место золотая бухара золотая вобла золотая лестница золотая лихорадка золотая лошадь золотая роща золотой дворик золотой дракон золотой самарканд зори ибис kitchen ив. дурдинъ иван да марья иван дурдинъ иван чай иван-чайное купе игристый идеал идель иди обниму идилия вкуса идиллия идола иду лесом иерусалим ижора из теста изба избёнка изи паб измайлофт изюм изюм чайхана халяль иксики илек-илек илико илларион иль джорно иль марко иль пиццайоло иль помодоро илья муромец имбирный карп имеджин кафе империал империя империя пиццы индийская точка индимания инжир инсайт кофе интеллигенция ип ермак а. м. ип игнатова м. г. ип федорова е. е. ирбис ц ирина ирина 554 ирландский паб дублинец ирс искра испанские пончики чуррос иссык-куль иста шоп истира запрафка история итальянец итальянская лавка итальянская тратория меркато итальянские каникулы итальянский ресторан итальянский ресторан casa el gio итальянский ресторан dapino итальянский ресторан roberto итальянский ресторан villa della pasta иш йорик убил хамлета кабуки кабул кавказ фуд кавказская кухня кавказский дворик кадамжай чайхана кадастровая палата казан - кебаб казан чай казанок казанчик казбек как дома калдис калимера калина калитки калифорния diner камбуз кампа кампанелло кампус каннибал кофе канти кантим кантинетта антинори кап кап кап энд кап капри каприз капучино кидс кара суу каравай караван караван one караван сарай каравин карамель карамзин караоке lounge vs караоке дубровский карас карасик карат кардинал карелия каретный двор карина кариночка карл баллинг карлинер карло карлсон каррифан карс фуд карточчо картулиода карэль касабланка катавина катька-запеканка катюша кафе кафе & караоке mansion кафе - кулинария два гуся кафе 11/11 кафе 24 табак кафе 24/7 кафе 288 кафе 35 кафе 365 кафе 69 кафе court кафе district кафе lights cafe кафе m-city кафе moscow кафе zar-pizza кафе азербайджан кафе арарат кафе арбат кафе аутентичной грузинской кухни мадиани кафе аё кафе бар кафе бар семави кафе баракат кафе березовая роща кафе бистро кафе бригантина кафе бульвар. шашлык-сити кафе быстрого питания кафе в дц акрос hyundai кафе в зимнем саду кафе в нии кафе веселый вареник кафе восток кафе восточное кафе восточной кухни кафе вьетnam кафе гбук московское кино кафе гриль кафе де марко кафе дегтярный кафе джовани кафе дионис № 1 кафе для поминок кафе домашней еды кафе домашняя еда кафе ели-ели халяль кафе жасмина кафе замок кафе изюм 8 кафе ипполит матвеевич кафе кавказской кухни кафе кенч кафе кондитерская кафе контдитерская кузина кафе кура кафе курвуазье кафе ланч кафе ласточка кафе лело кафе лесное кафе лоза кафе лубянка кафе луна кафе люблино кафе манас кафе манго кафе маска кафе милениум кафе москва кафе музея победы кафе на горе кафе на курсовом кафе на пришвина кафе натахтари кафе наше кафе оксюморон кафе папан кафе пекарня кафе пекарня № 1 кафе печкин кафе пир ок кафе пиццетория кафе плов центр кафе пляж кафе по-домашнему кафе подзонти.com кафе при азс кафе при гкнпц им. хруничева кафе при гостинице кафе при дц автомир кафе при дц рольф кафе при киностудии мосфильм кафе при ледовом дворце кафе при салоне красоты dessange кафе при храме святителя николая мирликийского в кузнецкой слободе кафе пушкарёв кафе ргсу кафе регистон кафе рыба & мясо на углях кафе сайгон кафе самарканд кафе солей кафе соляночка кафе столовая кафе ташкент кафе токмакоff кафе тут кафе у андрея кафе у мамы кафе у театра кафе удача надежда кафе узбекской кухни кафе усадьба кафе финист кафе халяль плов № 1 кафе чайковский кафе чемпион кафе чудо кафе шашлык кафе шашлычная 1957 кафе электрон кафе эталон кафе № 1 талас кафе&бар кафе, пекарня кафе-банкетный зал кафе-бар кафе-бар + бильярд кафе-бар 37/37 кафе-бар кампус кафе-бар огонек кафе-бар сити кафе-бар суши-wolk кафе-бар улыбка кафе-гриль кафе-кафе кафе-клуб сказка кафе-кондитерская кафе-кофе кафе-кулинария кафе-кулинария сикварули кафе-магазин экотопия кафе-пекарня кафе-пекарня крем кафе-пекарня марти кафе-столовая кафе-столовая sio кафе-столовая библиотека кафе-столовая на заречной кафе-столовая техника питания кафе-суши-бар кафе-тандыр кафе-трапезная antiпa кафе-хинкальная батоно кафедра кафедра вкуса кафема кафетерий кафетерий в иллюзионе кафетерий при азк 317 кафетерий с отделом кулинария кафетерий № 1 кафетериус кафетериус № 11 кафетериус № 26 кафетериус № 3 кафетериус № 6 кафетериус № 8 кафетеррия кафешка кахетия каховка-нова кахури каюк-компания квадрат кофе квартира 37 квартира 44 квартира паб квн кебаб кебаб хауз кебаб хаус кебаб-хауз кебабс кебабушки.ру кебар нон стоп кеклик кенко кент кетчуп & горчица кеци киану кикухана кимчи кинzа кинг авто кинг тхань кинзадза кино дубль кинобар кинопицца кинто киоск фастфудной продукции кипарис кирин кировоградская улица дом 16 корпус 1 кислород китайская грамота китайская кухня китайский ресторан китайский ресторан lusun китчен кишлак кк 12/10 кларом классика бокса клаштер клевер ритейл групп клинком клуб 811 клуб высоцкий клуб кафе zion клюкvа клюква клёво км халяль кнб княжий дворик кобзаръ ковчег козловица кокофреш коксинель колбасофф коленки пчелы колесо времени колибри колизей колобок колорит кафе колос колхи колхида ком 1989 комбинат комбинат дели комбинат питания комедия дель арте комод компот компотик конак кондитерская олега ильина кондитерская-кулинария брусника константа контрразведка коп-team коптильня корейско-японский ресторан корифей корица корнели пицца корнер гриль кортайгер корчма тарас бульба корё косатка космобургер космос косой маркс костёр косяк кот_ок котлет. нет котлета по-киевски котофей кофан кофе кофе & moloko кофе & еда кофе on кофе to go кофе бар кофе град кофе для настроения кофе и кофе и мечты кофе йог кофе комбо кофе макс кофе мира кофе на вынос кофе на окской кофе на рассвете кофе он мой кофе пойнт капучинофф кофе пью кофе с собой кофе с собой а&m кофе с собой кофемол кофе стоп кофе твой друг кофе тема кофе хауз кофе ход кофе&moloko кофе&сласти кофе, кухня и вино так сказала моя мама кофе, пекарня кофе, шаурма, тандыр кофе-brake кофе-выпечка кофе-лавка стол кофе-пойнт техноград кофе-порт кофе-сэндвичи кофеin кофебар спесь кофеварка кофеварня кофеграфия кофегусь кофеда кофедей кофеек кофеиново кофейная история кофейник кофейня кофейня 1554 кофейня 1981 кофейня 613 кофейня 8/25 кофейня coffeebrain кофейня daily green кофейня enjoy кофейня one&double кофейня анклав кофейня борис сонный кофейня калдис в проезде сокольнического круга кофейня каскара кофейня на дровах кофейня на ломоносовском кофейня на остоженке кофейня оракул кофейня от автора кофейня свежий номер кофейня № 7 кофельяно кофемания кофемания bez tarelok кофеопия кофепорт кофепровод кофети кофеточка кофетун-сушитун кофетут кофефест кофешефф кофешоп 4.20 кофея кофиид! кофишенская коффе души коффемагия кочевник кочевники кошерное кафе-гастроном bs gourme kosher кп мэи кпоп кафе токпокки крабетерия краболов крабс бургер бар крабыкутабы кравченко 8 стр. 6 кранцлер крафт бургер крафт кофе бар крафт тайм креветочная крем-бюро сеть кондитерских крендельок крепери кристалл крона кроули айриш паб крошка картошка круассан кружка паб кружкапаб крутые желтки крылья крымские чебуреки крёстный отец кстати cafe at home кубдари кувшин кувшинчик куда пиццу? кузьминки кулинариум кулинариум - кулинария, пироги, салаты кулинария кулинария виктория кулинария на сходненской кулинария питаевых кулинария фасоль кулинария № 22 кулинарная лавка кулинарная лавка братьев караваевых кулинарная лавка прайм фуд кулинарная мануфактура кулинарная студия юлии высоцкой кулинарная школа ginza project кулинарная школа-кафе кулинарное чтиво кулинарный дворик 1996 кулинарный рай кулинарские острова культ вкуса культура вкусов культурный код куманёк кунжут курага курдюк куржун курица и утка по-гонконгски куры-гриль курьер кусочки кутята кутята coffee shop кухня кухня & маркет кухня востока кухня гастро-паб кухня как дома кухня на район кухня народов кухня полли кухня халяль кушавель кушай город кушать подано кыргызстан ла гатта ла делициа ла карот ла мортацца ла пиола ла прима пиццерия маргарита ла специя лабиринт лав лав пельмень лаванда лаванда кофе лаваш и ко лаваш лофт лавашок лавка daily лавка бублик лавка вкуса лавка добавка лавка хлеба лавкрафт лавлаваш лавочка лавр-маш лагман лагман хаус лагманная лагманная № 1 ладо лаззат лайфхакер лайфхакер кофе лакафе лаки pizza лаки сувлаки лакомка лакрица лакса лале ламаджо лампа ламянь ландринъ ланч ланч бокс ланч и кофе ланч поинт лао ли лао ли менделеев лао ли рассвет лапша & суши лапша ланьчжоу лапша. вок. димсамы лапшаwok ларионов ласточка латарт латраттория латте латук лаунж бар кенч лахинкали ле монд ле шаверма лебяжье лев и кастрюля легенда легенда самарканда легендарное кафе легенды ледовый дворец лейкин и закон леклерк лемон лемонграсс лен&гречка ленкорань лента онлайн леон лепешка, самса лепим и варим лепим и варим в европолисе лепим и варим пельменная в саду лепим и варим пельменная на рынке лепим и варим пельменная на рынке № 2 лес лесная трапеза лесное лесной лесной уют летний сад летняя веранда лето близко лефорт лефортово лечо ли либерто ливан хаус лига шашлыков лилия лима - перуанская кухня лимонадница лимончино линдфорс линии вкуса лиса и гусь листок литали литературное кафе литл бро литл осака бар лобби-бар манжо лодочная станция лодочная станция остров мечты лоза локация локо ломоносов лорэм лотос лофт кофе деталька луар луиза лукум луна луч лэмб кук любимая пицца любимоё любимый город любить кофе пить люблинчик любовь и сладости любовь пирогова люди как люди люди ходят люля-кебаб и шаурма люстра люстра бар ля кафе ля фантази м - кафе м2 органик м5 ма ми мави магадан веранда магадан на белой площади магазин кафе магазин кулинария магазин фастфудной продукции магазин шашлыка № 1 магбургер магнолия мадам москвичка мадина мажор мазза макаронная маки маки макиндоли макисо макларенс паб макмил маковка максбейкери максима кафе максима пицца маленькая пекарня журавлевых маленький француз малетон малэ мама будет рада мама, я в тбилиси мамина еда мамина кухня манас манга рамен суши бар мангал мангал house мангал times мангал хаус мангал холл мангалшашлык мандарин мандариновый гусь манера мануфактура 15 манфит маняма марfино маракуйя марани марафон маргарита маргилан маренго мари vanna марина марио маритим мария санта марков двор марлен-сити мармарис мармелад мармеладница марокко марсель марсера у сирануш мару мархал марья масала арт масала хаус масса кофе мастер мастер вкуса мастера тарутины мастервкус мастерская вкуса мастерская еды матрешка матрёшка мать и дитя маурицио мацони мацони тайм маэстро маэстро пицца маяк ме ли мегаполис кафе мегобребо мегрелия мегрули медиа медиакафе рг между булок между делом мекеним kg мексиканская бабушка мелиса мелодия мельница менга менза ментано меркато меркурий стройсервис мерлин мерси 5 звезд мерси баку месопотамия местные местный место 20/1 место огонь место хлеба месье круассан метехи мечта мещерское ми пьяче ми-лен мидари мидийное место миксер милано милена милленниум милти миль мимино миндаль мини кафе-бистро мини маман мини хинкальная мини-кулинария минутка мир мир 21 мир пиццы мир плова и шашлыка мир шашлыка мир шашлыков мирабель мираж мировая чашка мировой вкус мирофбар мисада миславнес мисс лавнес мистер донер 24 мистер пончик мистер хинкали мичелада мишель мк-мир кулинарии ммм вкусно много лосося моби кит модель пинкмана моди модикум модуль вкуса мое кафе может, кофе? мой дом мой крафт мой сладкий мока мокка молинари моллетта пицца&паста молодо-зелено молоко молоко и мед молокотимьян монастырская трапеза монастырская чайная монерон монстер хиллс монстер’с монте кристо монтероссо море есть море на патриках море поке моремания мореморе моремэй моремясо морепиva мороженое 18+ alcreme москwа москва дели москебаб московские пышки московский дворик московское небо мосплов моспончики мосфильм мосчайхана мосшашлык мох мохамед моцна пицца моя история моя николь моё кафе мревли мск lounge мск кофе мтевани кафе мти-ели му-му муган мужик у плиты муза музейное кафе музон мука мурас мусанг муссон мустафа кебаб мучачос мцхета мы за кофе мыcafe мысли кофе мэри мэри групп мюнгер мясвегас мясная кулинария мясная машина мясной мясной boutique мясной ресторан the бык мясо & зелень мясо на углях мясо на углях & пекарня мясо&паста мясо&рыба мясо-шмясо мясоед мята мята cyber мята lounge мята platinum мята signature алтуфьево мёд и пряность на басманной на бульваре на волгина на волне на воронцовке на гриле на ковёр на мангале на мосфильмовской на нагатинской на ночь жрать на ордынке на перекус на смирновской на углу на углях на шашлыки наби нават навруз название забыл назис пури нам намангале нами намшон нанг наоп напитки со всего мира нарва нарния наршараб наследие настоящие хот-доги натахтари натюр фритюр нау находка наш двор наш долг наш самарканд наша история наша чайная наши люди не горюй! неаполитан пицца небеса небулошная негодники нейборс нескучный неслучайно 08 08 нжк никола тесла ниппон кафе нияма нияма&пицца-пи нло новатор кофе новая новая столовая новые русские пельмени новый свет новый формат ногбон осетинские пироги ноев ковчег нонна мария ноокат ноукофе ночной баку ночной дворик нтс нугбари нужно зайти нуш донер нуш-аппетит нью-йорк пицца и гриль нэм нэм ням по пути ням-ням нямням 1 о ле о! суши о! фобо о, да! еда! оvца оазис обед & кофе обед банкет обед буфет обедов обжора облако овсянки огни баку огни востока огни города огни севера огонек огоньки cafe огонёк одесса-мама оджахури однажды в ташкенте одуван ок оке поке окей олива оливка олимп олимпия оля ом ом-кафе омореморе омореморе & wine омулёвая бочка он мой онегин онегинъ онлайн-кондитерская bagatelle москва опята оранж оранжерея апельсин оранта орбита органик ореховый бульвар орма ором орхан осетинские пироги pir & rog осиё остерия альберобелло остерия итальянцы остерия марио остерия трио остров островок островок суши от и до от мяса до рыбы от пуза открытая кухня отменная пельменная оттепель отчий дом офис-буфет офицерское охотка очаг очаг grill ош ош сити ош халяль пark па па кофе па-паэлья паrk фудхолл паб паб 28/13 паб усачевский паб-ресторан cuba паблик павлиний хвост палацио палео палермо, кафе палки-скалки палладиум пальмира памир пампушка пан запекан паназиатская кухня паназиатское бистро эйва панда панда кофе пандок панин и ко панорама пантера панчетта панчо фэктори папа блюз папа вейдер папа джонс папа карло папан паприка парабола пардес парк парка парламент пармижано паровозик парос парсе парус паста гриль паста и баста паста ризотто патриот паша донер паэлья хаус пекариони пекарнефф пекарня пекарня 24 пекарня булошная № 1 пекарня буханка пекарня донер бистро пекарня и кофейня пекарня кафе пекарня кулинария бико пекарня маковка пекарня на районе пекарня номер 1 пекарня хлеб из тандыра пекарня шварц брецель пекарня № 1 пекарня № 1 грузинская кухня пекарня&донер пекарня, кафе-гриль пекарня, кулинария пекарня-шаурма пекарня24донер пекарняуз пекинская утка пекинский двор пеко пекорино пеликан пельмени пельменная пельменная 4 теста пельменная-вареничная пельменя 61 пеньки пепе неро первая линия первая перчатка первый нос пергамент перекресток перекрёсток перекрёсток кафе перекус перекусофф перец&мята персе кафе персоны пескаторе песнь моряка песок петрович петровская кофейня петтина печенег печкин печорин печь и мангал пивбар пивбар коломенское пивзавод77 пивница пивной пивной бар pivo. bar пивной ресторан пивной ресторан pub пивной ресторан пив&ко пивной ресторан пинта пивнушка пиво кафе пиво пицца пивтрест пикассо пикассоль пикколо пикник пикниковая зона пп серебряный бор пикочино пилпили пилюлька пион пипл&паста пипони пирог хауз пироги по-домашнему, халяль пироги, вино и гусь пирожки пирожковая пиросмани пит брэд пита & сувлаки пита бар ривер хаус пита хаус питапита питербургер пить есть! пицерия пауло виктория пицца пицца & гирос & шаурма пицца 28 сантиметров пицца бар лавка пицца всем пицца грасса пицца и гирос пицца и канноли пицца кофе пицца на районе пицца паоло пицца парк пицца пеппе пицца суши пекарня пицца суши тат пицца фабрика пицца фалафилло халяль пицца экспресс пицца экспресс 24 часа пицца № 1 пицца-паста пицца-фабрика пиццадар пиццаменто пиццанео пиццасушивок пиццбург пиццерия пиццерия come on pizza пиццерия pizzamento пиццерия паб пиццы захотелось планета вкуса платформа 9 3/4 плов плов & самса плов & стейк плов лагман плов тут плов хаус плов хаус исфара плов хаус халяль плов центр плов. point пловбокс пловмания пловная № 1 пловная-чебуречная пловно-сытно пловный аул пловчик плюшка плюшки стынут пляж пляж-ресторан речной по кайфу по чесноку по-домашнему поварская лавка повезёт погребок под мухой под мятой под плеdом подиум подоконник подсолнух подсолнухи поесть мы любим больше чем позы&буузы покемо поле тëти анжелы полонрот поляна поляна парк кафе полянка полянка бар полянка вайн полярная звезда поместье-парк поминальная трапеза поминальные обеды пончики пончики от бабушки пончики! выпекаем на месте пончиковая порапопицце пороселло порт портал порто миконос посейдон после обсудим почитательная пош бар пошаблим? правда правда кофе правда кофе остоженка 42/2 правильная блинная правильные роллы правый берег селигера пражка прайм тайм праймбиф бар практика кофе прасад премьер пицца премьера преснявары бар пресс бургер престиж шайн лаунж привалофф примавера примус причал причал моряка причина для капучино приятного аппетита про людей пробка прованс прогноз погоды прогресс прогресс кафе-бар еда продуктовый дом реснота проект еда прожектор прокафе пронто пропаганда просвет просто кофе протесто профессор пуф профессоре профитроли прохлада прошу к столу прянишная птица-синица птичка птишу пуаро публика пузатая хата пурмарили путь барашка пушкинъ пшеница пян-се пять звёзд рhово работа равиоли радиола радуга разливные напитки рай у фонтана рай-on райдора райхан ракета раки beer & wine раковарня иван раковар раковарня клешни и хвосты раковая раковая жигули рамен тен рамен-клаб рандеву ранние пташки рассвет винный бар раф & стафф раф хаус рафф. два? три! рача раян реберная № 1 ребрышки и крылышки регар сити регистан регистан 24 ред36 резиденс река релти ремесленная пекарня петр и павел ренессанс репаст рест-кейтеринг ресто клуб ресто-чайхана мурас рестобар рестобар argomento рестобар колбаса рестобар лёд рестоль рестопаркинг ресторан ресторан & бар chesterfield ресторан & бар tutta la vita ресторан & бар бокас дель торо ресторан 29 park lane ресторан 360 ресторан bagebi ресторан balzi rossi ресторан bon app cafe ресторан cafe de arts ресторан desert rose ресторан dream city ресторан el idilio ресторан harvey & monica ресторан landau cafe & grill bar ресторан mandarin ресторан my place на проспекте мира ресторан proftesto ресторан sadovnicheskaya ресторан seasons ресторан spettacolo ресторан temple bar ресторан unica ресторан villa pasta ресторан арарат ресторан бабель ресторан бакинский домик ресторан башкортостан ресторан берег ресторан броско ресторан быстрого питания ресторан быстрого питания эсперанто ресторан вайнахской кухни асса ресторан вера парк ресторан вкусный хауз ресторан воробьёвы горы ресторан воронеж ресторан высота ресторан вьетнамской кухни бик-кау ресторан генацвале vip ресторан грузинской кухни с грузинским акцентом ресторан грузинской кухни хинкали, вино, мимино ресторан дежа вю ресторан ди паоло ресторан доктор на крыше ресторан домашней кухни долма ресторан кепи ресторан китайской кухни чуаньюй ресторан клуб ресторан колхида ресторан корейской кухни новая азия ресторан краснодар ресторан кроко ресторан купец ресторан лаваш № 1 ресторан лермонтов ресторан лодка ресторан луснар ресторан мадлиани ресторан март ресторан мацони ресторан много лосося ресторан мой двор ресторан паладин ресторан пронто ресторан рассольников ресторан россичъ ресторан самарканд ресторан сербской кухни субботица ресторан сим сити home ресторан стейкs ресторан тройка ресторан турецкой кухни eleven meathouse ресторан узбекистан ресторан чайхана инжир ресторан эристави ресторан японской кухни такэ ресторан ярославский ресторан № 13 ресторан, кафе, бар ресторан-бар crazy brothers ресторан-бар zames ресторан-караоке vintaж77 ресторан-караоке шу-шу ресторанный комплекс гамма-дельта ретро кафе ретро нью ретро-буфет рецептор речниковъ риальто рибамбель ризотто рикису рим римская пицца рис и вок рислинг бойз ритм и вкус рихтер рич риччи каприччи робин и пятница робин-бобин ровесник родник родной рожь хлеб и кофе роза ветров розмарин роко бэй — мох и кофе роллофф роллы суши и десерт роллы № 1 рома романо романовская пекарня ромашка ромбус ромина роса росизо роскофейня.рф роскошное море рослеспром роспончик россо рива росток рохат роял индия рояль ртвели рубим бургер рублёв рублёвский базар руины ресторана лето рукав руккола рум21 румбокс русалочка суши руспыш русская картошка русская трапеза русская тройка русская чайная нитка русские пончики русский дар трапезная русский ресторан русский чай руставели рыба из тандыра рыба мечты рыбацкая деревня рыбная мануфактура № 1 рыбный базар рынок и общепит рынок на ленинском рэдимэйд рюмочная ильича рюмочная комната отдыха рюмочная свобода рябина саамо сабаба саббаба саббиа кофе сабр сабфилд садовод садовый буфет сады семирамиды сайгон - вьетнамская кухня сайзен сакварело сакура сакура place салам алейкум саламури салхино салют сам пришёл самаргало самарканд самарканд сити самми самовар самолёт самотхе самса халяль самса хаус самса № 1 самсахана халяль самсахона самсушка-пампушка самурай санапиро сандал сандвич сансар санта базилия санчо панса чуррос&трдельник сатрапезо сафажай сахалин сахар&сливки сахара сахарочек сащя саят-нова свадьба соек сварня свежая выпечка свежееесть свежо горячо свежъ светлана свидание на крыше свитт бокс свои люди своя кухня севгилим север север-метрополь северяне северянин севилья сегодня мидии сезам сезон сезоны секретное место сели и поели семейная пекарня семейное кафе семейное кафе сказка семейное кафе-пекарня штрудель семейное пространство kidzrock cafe семейные традиции семейный очаг семейный ресторан boobo семетей семнадцать семь хлебов семьяне сербская мясара сервис плова сервис-кафе серебряная ложка сесто сенсо сестра тюленям подруга рыбам сестры ежевичкины сетевое кафе сетунь сеть итальянских кафе меркато сеть кафе зарядка сеть корейских кафе инсам бистро сеть кофеен латте сеть поминальных залов сибирская корона сибирьсибирь сиель сиеста вино & паста сикварули сим сити бакинские каникулы сим-сим симбиоз симит хауз симонов сингл бар синкопа синнабон сирень сирийская шаурма сириус система сити сити донер 24 сити лайф сити лайф ривер сити пицца сити чебуречная ситипицца сицилия скаzка bar сказка сказка египта скай-вью скала скалка скандинавия скарабей скатерть-самобранка скворец! скитская трапезная сколково скоровару скотина скрепка слава славия сладкая параллель сладкие минуты сладко сладкое следующая станция сокол слепой пью сливки слиппи том смайл смак смакбери смарт кафе смартфуд смачно сметана снеди феди снути фокс собрание сова советская чебуречная советские времена советъ в филях сойка напела сокол сокровище солнце в тарелке соломинка соль сольфасоль сонаму соната сорока соседи сосны софи сочная шаурма в кузьминках союз союз кофе спектр спорим, вкусно? спорт кафе спорт-бар спорт-кафе среда питания среди своих средняя первомайская улица, 3 ссср ставр стадиум стамбул дурум стамбул чайхана станколит фудмаркет станция пельменная стар стар самарканд стара юга старая арба старая крепость стардог стардогс старик и море старик кутабыч старинные обычаи старое место старые друзья старый баку старый батумъ старый город старый дворик старый дуб старый кактус старый сычуань статус стейк & бургер стейк хаус стейк хаус бутчер стейк&паб стейк&устрица стейк-бар добыча стейк-хаус black angus стейки bar-b-que стейки good prime стерх стильавто столафе столица столичная столичная трапеза столичный вкус столичный повар столичный экспресс столовая столовая & кафе столовая +лагман столовая - буфетъ столовая 24 столовая 33 столовая uz столовая в марьиной роще столовая дельта столовая докки № 9 столовая на мосфильмовской столовая на шаболовке столовая обедофф столовая сыто пряно столовая № 1 столовая-буфет столовая-кафе росинка столовая.ру сторожка страдивари стражек страна 43/41 страна которой нет стрит фуд строгинская гавань студия 2000 стумари ступенька субботица сербская кухня суло султан лагман султан палас сундук сунели сунжа суп суп кафе суп том-ям супер метро сусеки суши & пицца суши love суши wok суши авеню суши бай б суши бар № 1 суши гохан суши лавка суши маки суши мания суши пати суши пицца суши пятница суши рай суши роллы суши роллы на районе суши сет суши соро суши стор суши таун суши хай суши-пицца 312 суши-пицца-паста сушисет сушистор сушишоп сущёвский двор сходненская56 счастливая щука счастье на крыше съестная лавка сыр и кофе сыроварня сытникъ сытный лис сыто пьяно сытые люди сытый гусь сытый ежик сытый лось сэндвич-бар сэр хинкаль сю си пуси сюр сёкуёку таверна дядя геральт таверна у околицы таверна фили хаус таежный гриль таекпицца тажинерия тай-сан тай-чай тайм порция тайм-ланч тайна тайное место так сказала моя мама такобар такэ до тальбина там ем тамада таманно тандыр тандыр & мангал тандыр хаус тандыр № 1 тануки тапки тапчан таратор тарелка тарелка в бц ямское поле татбургер татнефть кафе тауз тахи тачки ташир пицца ташкент сити тбилисо тбилисо, трактир тбилисоба твин пигз твой кофе твоё кафе те самые пончики тебурасика тейст телебистро телиани темаки теплица теплое место тер. мос теремок терраса территория десертов тесто и сыр тетри техника без опасности техникум техноверанда тим шашлык&бургер тимир тинатин тинта тинто тираж тирольские пироги тифлисский дворик тифлисъ тихий дом тк ткемали тода пицца тодасё тоже паб ток токат токио рамен толстяк том том ям тони пиццони топ chick топ стар топ чик топор торгсин-маркет торнано торпеда торты от сети кофеен шоколадница тот ещё гусь тото точка точка доступа точка питания тоша траектория крафт-кафе трактир трактир лефортово трактир на лодочной транзит времени трапеzа трапеза трапезная трапезная паломника траппист траттория evi траттория semplice траттория vabene! траттория венеция траттория да чикко траттория иль тортеллино траттория стефано трдельник трдельникъ трдельнишная три вилки три жирафа три кофе три перца три поросенка три сковородки три финика триггер триумф тройка тройка бар тролли кидс труффальдино трын-трава трэвэлерс кофе турецкая лавка турецкая шаурма турист тут том ям тут шаурма туше тхали тхань тхин 68 тц тысяча одна ночь тэсти тянь чао тёщин борщ у акопа у бабушки лётчика у бори у бурчо у горыныча у джона у маила у мангала у маслория у михалыча у роберта у русико у руслана у сан саныча у сильвы у славы у фонтана угар молодости угловая угол уголок уголок вкуса уголёк удача узбек кафе узбекистан узбекская кухня узбекская национальная кухня узбекские блюда узбекские кафе узбекский дворик узбечка узген узген халял узоры узплов халяль уйгурский лагман укромный уголок укун улей улитка в шоколаде улица гиляровского 17 улица гурьянова 55 умное кафе универ универсал рс университетское ургут халяль урожай урюк услада утрободрое учкудук три колодца уют уютный дворик фа минор фабрика домашней еды микаедов фабрика кофе файзи фактура фалафель шеф фалафель-хумус фалафельная ecotopia фалафилло фантазёры бистро фаренгейт фаринари фартук фасоль фастфуд феникс кофе фергана ферганское ферма ферма кафе фермербуфет фермерс пицца фиалка филатов гриль филибум филин филипповъ фитнес кафе фитнес кафе fresh fit фитнес меню фитнес-бар флокс флоренция фо 89 фо point фо бо & том ям фо бо 83 фо бо и том ям фо бо ю фо оань фо стрит фо стрит трио фо тхин. phở thìn фо-бо фобс фоксбор фонтан view формула за рулем фортуна фосити франклинс бургер французская пекарня французская пекарня delice фрателло фрегат френдс френдс в гостях у моники френч бистро фреско фреш фреш кафе фрешка фри фло бар фуд-корт техноград фуд-холл 2 быка фуд-холл оптимист фуд-холл рестомаркет фудкорт фудкорт onegog фудкорт рестомаркет фудмаркет фудмолл фудмолл привоз фудсайд фудфреш фудхаус фудхолл дружба фыдджынта осетинская кухня фьонг донг фьюжн фэмили кейтеринг фэмилим х1.0 хачапури хабурзак хадича хазар хазри хаиям хайям lounge халал халаль кафе халва халва кофе халва, сеть почтоматов халял халяль халяль закусочная халяль кафе-пекарня халяль узбекские блюда халяль хурма халяль № 1 халяльная еда хан кебаб ханой фуд ханойский стрит-фуд хансамса хао хао харбин харчевниковъ харьковская улица, 2 хаус бар хачапури хачапури и вино хачапури и хинкали хачапури+хинкали хачапуридзе хачапурия хачапурная хаят хвоя хей мам хелло, индия! хива хинкали хинкали & хачапури хинкали - gали! хинкали gали хинкали gали! хинкали point хинкали vs бургеры хинкали vs хачапури хинкали и вино хинкали и хачапури хинкали кафе хинкали у нино хинкали хачапури хинкали+ хинкали-gaли хинкали-gали хинкали-gали! хинкали-хачапури-шашлычок хинкали. хачапури хинкалофф хинкалъ-паласъ хинкалька_ру хинкальная хинкальная 11 хинкальная 17/1 хинкальная 777 хинкальная jn хинкальная ботота хинкальная в сокольниках хинкальная кера хинкальная кинза хинкальная ламазо хинкальная легенда хинкальная мегобари хинкальная москва-тбилиси хинкальная на арме хинкальная на гоголевском хинкальная на пресне хинкальная на руставели хинкальная на спасской хинкальная нагатино хинкальная пирвели хинкальная рачули хинкальная тбилисо хинкальная триумф хинкальная у бехо хинкальная уют хинкальная чача хинкальная экспресс хинкальная № 1 хинкальная № 5 хинкальная № 8 хинкальный дворик хинкальный дом хинкальный дом марань хинкальный дом тбилисо хинкарули хитрые люди хищnik хищnik стейкs & burgers хлеб хлеб & co хлеб да выпечка хлеб да обед хлеб и вино хлеб и помидор хлеб насущный хлеб насущный экспресс хлеб с маслом хлеб хаус хлеба&зрелищ хлеба&зрелищ пиццерия хлебная лавка хлебная лавка бородинского хлебница хлебный двор хлебный дом хлебо mania хлебомания хлебопёкъ хлебосол хлебушек хо хойан. вьетнамская кухня хокк хоккей хоппи хорека хорошая девочка хорошее место хорошие знакомые хорошие люди хороший вкус хот догги дог хочу в лаваш хочу кофе! хочу пури хочу хычин хочу шаурму хочу шашлык хуан кофеман хуан хэ хуго хурма-бастурма хычины царская кофейня царская трапеза цдл цдр цезарь центр вкуса центр плов центр плова центр плова афсона центральное центральный дом туриста центральный рынок центральный рынок на маросейке церковная трапеза церковная трапезная церковный хлѣбъ цимес цимусфуд цинандали циники цицинатела цурцум_кафе цхалтубо цыцыла чабан чуду чай чай хана халал чай-кофе чайка чайкоv чайкоv lavazza чайлэнд чайна таун чайная чайная высота чайная тайга чайхана чайхана 24 чайхана 24 бильярдный чайхана 24/7 чайхана 5 чайхана daar house чайхана doner кафе чайхана döner чайхана olive чайхана sabr чайхана vizir чайхана адияхан чайхана азия чайхана аксарай халяль чайхана аксы чайхана алайский базар чайхана алатоо чайхана аль-бакара чайхана анас 24 часа чайхана арзон фуд чайхана баракат чайхана беш-бармак чайхана бишкек чайхана бишкек kg чайхана бишкек сити чайхана вкус самарканда чайхана вок лагман чайхана дастархан чайхана дегунино чайхана долина чайхана достук чайхана дружба чайхана дружба народов чайхана зам-зам чайхана зейтун чайхана зилола чайхана зилола 2 чайхана зира чайхана инжир чайхана исфисор чайхана ихлас и бильярд чайхана кенч чайхана космос чайхана кумыс чайхана лола чайхана майиз чайхана манас чайхана москва-ташкент чайхана мускат чайхана нават чайхана навои халяль чайхана найман чайхана омад чайхана ордо чайхана ором +24 чайхана очаг чайхана ош чайхана ош пош чайхана ош сити чайхана пловная чайхана райан чайхана райхан чайхана рахат чайхана регар чайхана самарканд чайхана семетей чайхана софия чайхана тахар чайхана ташкент чайхана ташкент сити чайхана у али чайхана у самвела чайхана умар чайхана ургут халял 24/7 чайхана уч кудук чайхана файзи чайхана финик чайхана фрунзе халяль чайхана халал чайхана халаль чайхана халаль 24 чайхана халва чайхана халяль чайхана халяль plov city чайхана хан чайхана хива чайхана хизмат чайхана хурма чайхана ширин халяль чайхана элина чайхана эне-сай чайхана этно чайхана № 83 чайхана-24 чайхана-халва чайхана. uz чайхана. ясин чайхана24 чайханский плов чайхона чайхона 24 чайхона азия халяль чайхона айва чайхона анор чайхона бишкек сити чайхона востока чайхона востока 24 чайхона дустон чайхона лаззат чайхона лазиз чайхона манас чайхона на соколе чайхона нурман чайхона ош сити чайхона райхан чайхона рахмат чайхона самса донер № 1 чайхона сармат чайхона ургут чайхона фаррух чайхона халва чайхона шафран чайхона № 1 чайхона №1 чакруло чаме-чаме чанахи чанчан чао-пицца чап-чак час-пик чашки чб чебуреки чебуреки воробьевы горы чебуреки и манты чебуреки манты чебуречная чебуречная история чебуречная ссср чеддер паб чела человек и кофе чеми чемпион чемпион суши - суши, роллы, wok, пицца, донер чердак чердачок черепашка черетто черетто море черновар черный чертаново черчилль паб честная кухня честная трапеза четвёртая стена четыре комнаты четыре пекаря чеховъ чехонте чехофф чешские булочки трдельник чи-фань чизберри чинар чинар бар чинар-а чистая линия чито-гврито чито-ра чифанька чихо чичико чойхона чокнутый эспрессор чудо печка чудо тандыр чудо-печка чудокофф чёрная береза чёрная пантера чёрный чёрный кот шава № 1 шаварме. шаурма. фалафель шаверма шаверма и фалафель № 1 шаверма&бургер&хот-дог шаверма-братуха шагал шайба шакти ма шале-микс шале-прайд шамкир шампур хаус шантарам шантимэль шарбат халяль шардам шарлин шарманка шатер адмирал шатёр шаурамус шаурма шаурма & гриль шаурма - донер шаурма 24 шаурма 24 гриль шаурма 24/7 шаурма grill шаурма house шаурма z шаурма арт шаурма бар шаурма в пите шаурма донер шаурма и бургер шаурма и все остальное шаурма и лепёшка шаурма и таук шаурма инн772978462547 шаурма мир вокруг шаурма на районе № 1 шаурма на углях шаурма на углях фалафель шаурма по-братски шаурма энд пипл шаурма-шашлыки шаурма24 шаурмагия шаурмама шаурмангал шаурмкинг шаурмовик шаурмовский шаурму х@чу шаурмян у арена шауршеф шафран шах&мат шах-даг шаш шашлык шашлык 100% шашлык house шашлык на углях шашлык на углях g&m шашлык фуд шашлык хаус шашлык шаурма лагман шашлык шефф шашлык-машлык шашлык.рф шашлыки шашлыки на верхней первомайской шашлыкоff шашлыкофф шашлычков шашлычная шашлычная угли шашлычная № 1 шашлычная-чебуречная шашлычная-шашлындос шашлычная77 шашлычный двор шашлычный двор № 1 шашлычный дворик шашлычный дворик № 1 шашлычный мир шашлычный рай шашлычок шашлычок-24 шварцкайзер швили шеf пончик шеff накормит шейх палас шел моцарт и бах шелби шербет шеф burger & doner шеф concept шеф kebab & steak шеф арбат шеф бургер шеф буфет шеф гирос шеф мангал шеф хаус шеф-плов шефс шик шашлык шикари шикер люляш-кебап шинок шир широкую на широкую шкафе бульон школьник шоколад шоколад имбирь корица шоколадка шоколадница шоти шпатен-хаус шпинат штаб квартира штолле шум города щепка щиборщи ыссык-кол эcook эгриси эдельвейс эден эзо эклер эклерко эклерная клер эко шаурма халяль эко-буфет эконяма эксмо экспедиция. северная кухня эларджи элеонора эллилагер эль кафе эль-шарк эльба эльнур эльф эндемик эндорфин энесай энтузиаст эрмитаж эрна эскалоп эспрессо эспрессо клуб эссе эстетик эстетика вкусов эти вафли это кофейня этокофе эфенди эчпочмак. татарские пироги эшторил юг югос югославия южная ночь южное южный дворик южный порт юма юность юнус халяль юпитер юрта я в тай! я кофе я люблю суши я самарканд я самурай! я щамс яккабаг ялва ялла ям ям ян примус яндекс еда яндекс лавка яндекс.лавка янис янтарь японамать японская кухня японские традиции японский король японский пёс япоша яркофе ярмарка морских блюд ярославна ярославский яръ ясмин ясно яуза ё-ланч ёж и устрица ёрш
Точечно были отобраны некоторые неявные дубликаты, поэтому далее приведем наименования к более корректному виду.
# Создаем словарь с переименованиями
rename_dict = {
'чемпион суши - суши, роллы, wok, пицца, донер': 'чемпион',
'топ chick': 'топ чик',
'фо бо и том ям': 'фо бо & том ям',
'халва кофе': 'халва',
'хинкали - gали': 'хинкали gали',
'хинкали gали!': 'хинкали gали',
'хинкали-gaли': 'хинкали gали',
'хинкали-gали!': 'хинкали gали',
'хинкали-gали': 'хинкали gали',
'хлеба&зрелищ пиццерия': 'хлеба&зрелищ',
'пекарня булошная № 1': 'булошная № 1',
'булошная №': 'булошная № 1',
'буханка': 'пекарня буханка',
'перекрёсток кафе': 'перекресток',
'перекрёсток': 'перекресток',
'правда кофе остоженка 42/2': 'правда кофе',
'регистан 24': 'регистан',
'доминос': 'доминос пицца',
'дэди, кафе': 'дэди',
'панда кофе': 'панда',
'ив. дурдинъ': 'иван дурдинъ',
'изюм чайхана халяль': 'изюм',
'кап кап': 'кап энд кап',
'кофе & moloko': 'кофе&moloko',
'кулинариум - кулинария, пироги, салаты': 'кулинариум',
'кутята coffee shop': 'кутята',
'лепим и варим в европолисе': 'лепим и варим',
'лепим и варим пельменная в саду': 'лепим и варим',
'лепим и варим пельменная на рынке': 'лепим и варим',
'лепим и варим пельменная на рынке № 2': 'лепим и варим',
'мэри групп': 'мэри',
'мясо на углях & пекарня': 'мясо на углях',
'ом-кафе': 'ом',
'алло! пицца': 'алло пицца',
'аль-бухари': 'аль бухари',
'белла чао пицца и кофе': 'белла чао',
'буфетрина. 2': 'буфетрина',
'в парке вкуснее!': 'в парке вкуснее',
'гастрорюмочная шесть-you-шесть': 'гастрорюмочная шесть you шесть',
'глобус, ресторан': 'глобус ресторан',
'да, еда': 'да еда',
'white fox cafe': 'white fox',
'wild bean cafe': 'wild bean',
'wok box': 'wok & box',
'yasha gourmet': 'yasha',
'surf coffee x takeoff': 'surf coffee',
'surf coffee x amen': 'surf coffee',
'surf coffee x flat': 'surf coffee',
'surf coffee x akademik': 'surf coffee',
'surf coffee x highway': 'surf coffee',
'surf coffee x lips': 'surf coffee',
'surf coffee x lovely': 'surf coffee',
'surf coffee x otto': 'surf coffee',
'surf coffee x sababa': 'surf coffee',
'surf coffee x shine': 'surf coffee',
'surf coffee x sport': 'surf coffee',
'surf coffee x studio': 'surf coffee',
'surf coffee x secret spot': 'surf coffee',
'shakeup': 'shake up',
'phobo': 'pho bo',
'рhово': 'pho bo',
'pride coffee': 'pride',
'prime cafe': 'prime',
'mátes pizza': 'mátes',
'mátes pizza&bar': 'mátes',
'niqa patisserie & cafe tverskoy': 'niqa patisserie & cafe',
'bloom-n-brew baum': 'bloom-n-brew',
'bloom-n-brew factoria': 'bloom-n-brew',
'cofefest': 'cofe fest',
'9 bar coffe': '9 bar coffee',
'true cost никуда не едем': 'true cost',
'udcкафе upside down cake': 'udcкафе',
'veranda grill cafe': 'veranda',
'vip wok and sushi': 'vip wok & sushi',
'wasabi, суши-бар': 'wasabi',
'wake up cafe': 'wake up',
'saperavi cafe': 'saperavi',
'shakeup': 'shake up',
'lucky eye. ближневосточной lounge bar': 'lucky eye',
'mainfood': 'main food',
'mátes pizza': 'mátes',
'mátes pizza&bar': 'mátes',
'ngon moscow': 'ngon',
'niqa patisserie & cafe tverskoy': 'niqa patisserie & cafe',
'k-town korean bbq': 'k-town',
'its сот-кофейня': 'its сот - кофейня',
'jeffreys coffee': 'jeffreys',
'jeffreys coffeeshop': 'jeffreys',
'jeffreys кофе и сидр': 'jeffreys',
'jeffrey’s coffeeshop': 'jeffreys',
'iq кофе': 'iq coffee',
'hanoi food&drinks': 'hanoi',
'garage café': 'garage',
'french bakery sedelice': 'french bakery',
'for you coffee lab': 'for you',
'fresh for you & cofe': 'fresh for you',
'friends forever botanica': 'friends forever',
'grape wine & kitchen': 'grape',
'festa&тесто': 'festa & тесто',
'florentini city cafe': 'florentini',
'estetica cafe': 'estetica',
'express кафе': 'express',
'dormouse coffee shop': 'dormouse',
'drive cafe': 'drive',
'drive café': 'drive',
'corner cafe&kitchen': 'corner cafe & kitchen',
'bổ':'bo',
'cantina city free flow cafe': 'cantina city',
'cofefest': 'cofe fest',
'arzon food': 'arzon',
'саббаба': 'сабаба',
'сакура place': 'сакура',
'чайкоv lavazza': 'чайковский',
'ош сити': 'ош',
'ош халяль': 'ош',
'spot poke & bowls': 'spot',
'raw to go kitchen': 'raw to go'
}
# Применяем переименование к столбцу 'name'
df['name'] = df['name'].replace(rename_dict)
Также было выявлено некорректное название заведения, изучим его подробнее
incorr_names = df[df['name'].isin([
'55.709201, 37.392257'
])]
incorr_names
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5875 | 55.709201, 37.392257 | кафе | Москва, Беловежская улица, 22 | Западный административный округ | чт круглосуточно, перерыв 10:00–20:00; сб круг... | 55.71 | 37.39 | 4.20 | NaN | NaN | NaN | NaN | 0 | NaN |
В сети по данному адресу не удалось найти кафе, так что просто удалим данную строку
indexes_to_drop = df[df['name'] == '55.709201, 37.392257'].index
df = df.drop(indexes_to_drop)
unique_names = df['name'].sort_values().unique().tolist()
all_names = ", ".join(unique_names)
len(all_names)
70353
# снова посмотрим дубликаты по совпадению наименования и адреса
df.duplicated(subset=['name', 'address']).sum()
4
# выведем их
duplicates = df[df.duplicated(subset=['name', 'address'], keep=False)]
duplicates
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 599 | в парке вкуснее | кафе | Москва, Северный административный округ, район... | Северный административный округ | ежедневно, 10:00–21:00 | 55.85 | 37.49 | 2.20 | NaN | NaN | NaN | NaN | 0 | NaN |
| 600 | в парке вкуснее | кофейня | Москва, Северный административный округ, район... | Северный административный округ | ежедневно, 10:00–21:00 | 55.85 | 37.48 | 2.20 | NaN | NaN | NaN | NaN | 1 | NaN |
| 3206 | udcкафе | кофейня | Москва, Кутузовский проспект, 57 | Западный административный округ | пн-чт 10:00–22:00; пт,сб 10:00–23:00; вс 10:00... | 55.73 | 37.48 | 4.30 | средние | Средний счёт:700–1000 ₽ | 850.00 | NaN | 1 | 96.00 |
| 3376 | udcкафе | кофейня | Москва, Кутузовский проспект, 57 | Западный административный округ | пн-чт 09:00–21:40; пт,сб 09:00–22:40; вс 09:00... | 55.73 | 37.48 | 4.30 | NaN | NaN | NaN | NaN | 0 | 96.00 |
| 5764 | vip wok & sushi | быстрое питание | Москва, Можайское шоссе, 45Б | Западный административный округ | ежедневно, 11:00–23:00 | 55.72 | 37.41 | 4.20 | NaN | NaN | NaN | NaN | 0 | 16.00 |
| 5850 | vip wok & sushi | быстрое питание | Москва, Можайское шоссе, 45Б | Западный административный округ | ежедневно, 11:00–23:00 | 55.72 | 37.41 | 4.20 | NaN | NaN | NaN | NaN | 0 | 16.00 |
| 7635 | estetica | кафе | Москва, Кировоградская улица, 15 | Южный административный округ | ежедневно, 10:00–22:00 | 55.61 | 37.61 | 4.20 | NaN | NaN | NaN | NaN | 0 | 60.00 |
| 7743 | estetica | кафе | Москва, Кировоградская улица, 15 | Южный административный округ | ежедневно, 10:00–22:00 | 55.61 | 37.61 | 4.30 | NaN | NaN | NaN | NaN | 0 | 60.00 |
# Удалим дубликаты по столбцам name и address
df.drop_duplicates(subset=['name', 'address'], inplace=True)
# Проверим
print(df.duplicated(subset=['name', 'address']).sum())
0
unique_names = df['name'].sort_values().unique().tolist()
all_names = ", ".join(unique_names)
len(all_names)
70353
#посмотрим, какие категории имеются в данных
df['category'].value_counts()
кафе 2375 ресторан 2042 кофейня 1411 бар,паб 764 пиццерия 633 быстрое питание 602 столовая 315 булочная 256 Name: category, dtype: int64
df['district'].value_counts()
Центральный административный округ 2242 Северный административный округ 898 Южный административный округ 891 Северо-Восточный административный округ 890 Западный административный округ 847 Восточный административный округ 798 Юго-Восточный административный округ 714 Юго-Западный административный округ 709 Северо-Западный административный округ 409 Name: district, dtype: int64
hours, price, avg_bill, middle_avg_bill, middle_coffee_cup, seats. # создадим столбец с улицей
df['street'] = df['address'].str.split(', ').str[1]
# создадим столбец с режимом работы (круглосуточно или нет)
df['is_all_day'] = df['hours'].str.contains('ежедневно, круглосуточно')
# проверим
df.head(7)
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | street | is_all_day | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | wowфли | кафе | Москва, улица Дыбенко, 7/1 | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.48 | 5.00 | NaN | NaN | NaN | NaN | 0 | NaN | улица Дыбенко | False |
| 1 | четыре комнаты | ресторан | Москва, улица Дыбенко, 36, корп. 1 | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.48 | 4.50 | выше среднего | Средний счёт:1500–1600 ₽ | 1550.00 | NaN | 0 | 4.00 | улица Дыбенко | False |
| 2 | хазри | кафе | Москва, Клязьминская улица, 15 | Северный административный округ | пн-чт 11:00–02:00; пт,сб 11:00–05:00; вс 11:00... | 55.89 | 37.53 | 4.60 | средние | Средний счёт:от 1000 ₽ | 1000.00 | NaN | 0 | 45.00 | Клязьминская улица | False |
| 3 | dormouse | кофейня | Москва, улица Маршала Федоренко, 12 | Северный административный округ | ежедневно, 09:00–22:00 | 55.88 | 37.49 | 5.00 | NaN | Цена чашки капучино:155–185 ₽ | NaN | 170.00 | 0 | NaN | улица Маршала Федоренко | False |
| 4 | иль марко | пиццерия | Москва, Правобережная улица, 1Б | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.45 | 5.00 | средние | Средний счёт:400–600 ₽ | 500.00 | NaN | 1 | 148.00 | Правобережная улица | False |
| 5 | sergio pizza | пиццерия | Москва, Ижорская улица, вл8Б | Северный административный округ | ежедневно, 10:00–23:00 | 55.89 | 37.51 | 4.60 | средние | NaN | NaN | NaN | 0 | NaN | Ижорская улица | False |
| 6 | огни города | бар,паб | Москва, Клязьминская улица, 9, стр. 3 | Северный административный округ | пн 15:00–04:00; вт-вс 15:00–05:00 | 55.89 | 37.52 | 4.40 | средние | Средний счёт:199 ₽ | 199.00 | NaN | 0 | 45.00 | Клязьминская улица | False |
plt.figure(figsize=(12, 3))
sns.set_palette("Set3")
sns.boxplot(x=df['middle_avg_bill'])
plt.title('Ящик с усами для среднего чека')
plt.xlabel('Средний чек')
plt.show()
Видим один явный выброс среднего чека заведения, который примерно на уровне 35000 руб. Рассмотрим подробнее
high_avg_bill = df[df['middle_avg_bill'] > 30000]
high_avg_bill
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | street | is_all_day | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 7177 | кафе | ресторан | Москва, Каширское шоссе, 23, стр. 2 | Южный административный округ | ежедневно, круглосуточно | 55.66 | 37.65 | 4.10 | высокие | Средний счёт:20000–50000 ₽ | 35000.00 | NaN | 0 | 100.00 | Каширское шоссе | True |
Такое заведение всего одно и называется просто "кафе". Удалим его для более корректного дальнейшего анализа.
df = df.drop(7177)
# снова посмотрим на ящик с усами
plt.figure(figsize=(12, 3))
sns.boxplot(x=df['middle_avg_bill'])
plt.title('Ящик с усами для среднего чека')
plt.xlabel('Средний чек')
plt.show()
Выглядит уже более правдоподобно, хотя и есть выбросы, но они имеют место быть
# анализируем количество посадочных мест
plt.figure(figsize=(12, 3))
sns.boxplot(x=df['seats'])
plt.title('Ящик с усами для посадочных мест заведений')
plt.xlabel('Посадочные места')
plt.show()
high_seats = df[df['seats'] > 500]
high_seats
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | street | is_all_day | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1326 | нам | бар,паб | Москва, Ленинградский проспект, 69, стр. 1 | Северный административный округ | ежедневно, 11:00–21:00 | 55.80 | 37.52 | 4.20 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1351 | максима пицца | пиццерия | Москва, Ленинградский проспект, 78, корп. 1 | Северный административный округ | пн-пт 09:00–00:00; сб,вс 10:00–00:00 | 55.81 | 37.51 | 4.30 | выше среднего | Средний счёт:1500–1800 ₽ | 1650.00 | NaN | 0 | 625.00 | Ленинградский проспект | False |
| 1355 | страдивари | ресторан | Москва, Ленинградский проспект, 77, корп. 1 | Северный административный округ | ежедневно, 11:00–23:00 | 55.80 | 37.51 | 4.20 | выше среднего | Средний счёт:1000–2000 ₽ | 1500.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1367 | академия | пиццерия | Москва, Ленинградский проспект, 72, корп. 1 | Северный административный округ | пн-пт 09:00–23:00; сб,вс 11:00–23:00 | 55.81 | 37.52 | 4.20 | средние | Средний счёт:1000–1200 ₽ | 1100.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1380 | север-метрополь | кофейня | Москва, Ленинградский проспект, 75, корп. 1 | Северный административный округ | ежедневно, 09:00–21:00 | 55.80 | 37.51 | 4.60 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1385 | чайхона на соколе | кафе | Москва, Ленинградский проспект, 69, стр. 1 | Северный административный округ | ежедневно, 08:00–23:00 | 55.80 | 37.52 | 4.30 | средние | Средний счёт:400–800 ₽ | 600.00 | NaN | 0 | 625.00 | Ленинградский проспект | False |
| 1393 | кулинарная лавка братьев караваевых | кафе | Москва, Ленинградский проспект, 72, корп. 1 | Северный административный округ | ежедневно, 08:00–23:00 | 55.81 | 37.52 | 4.30 | NaN | Средний счёт:500–800 ₽ | 650.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1442 | abc coffee roasters | кофейня | Москва, Ленинградский проспект, 72, корп. 1 | Северный административный округ | пн-пт 08:00–22:00; сб,вс 10:00–22:00 | 55.81 | 37.52 | 4.50 | средние | Цена чашки капучино:220–270 ₽ | NaN | 245.00 | 0 | 625.00 | Ленинградский проспект | False |
| 1446 | 9 bar coffee | кофейня | Москва, Ленинградский проспект, 80, корп. 1 | Северный административный округ | пн-пт 07:30–21:00; сб,вс 07:30–19:00 | 55.81 | 37.51 | 4.30 | NaN | Цена чашки капучино:60–150 ₽ | NaN | 105.00 | 1 | 625.00 | Ленинградский проспект | False |
| 1464 | находка | ресторан | Москва, Ленинградский проспект, 74, корп. 1 | Северный административный округ | ежедневно, 09:00–22:00 | 55.80 | 37.52 | 4.90 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1475 | falko pizza | пиццерия | Москва, Ленинградский проспект, 80, корп. 1 | Северный административный округ | пн-сб 09:30–20:30 | 55.81 | 37.51 | 4.30 | средние | Средний счёт:500–1500 ₽ | 1000.00 | NaN | 0 | 625.00 | Ленинградский проспект | False |
| 1498 | brooklyn coffee | кофейня | Москва, Ленинградский проспект, 78, корп. 1 | Северный административный округ | пн-пт 07:00–21:00; сб,вс 09:00–20:00 | 55.81 | 37.51 | 4.00 | NaN | Цена чашки капучино:60–150 ₽ | NaN | 105.00 | 0 | 625.00 | Ленинградский проспект | False |
| 1548 | french bakery | кафе | Москва, Ленинградский проспект, 74, корп. 1 | Северный административный округ | пн-пт 07:30–23:00; сб 08:00–22:00; вс 09:00–21:00 | 55.81 | 37.52 | 3.40 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1672 | ача-чача | ресторан | Москва, Ленинградский проспект, 9Б, стр. 1 | Северный административный округ | ежедневно, 12:00–00:00 | 55.78 | 37.57 | 4.60 | высокие | Средний счёт:1500–2000 ₽ | 1750.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1766 | золотая бухара | ресторан | Москва, Ленинградский проспект, 48, подъезд 1 | Северный административный округ | ежедневно, 12:00–23:00 | 55.80 | 37.54 | 4.40 | NaN | NaN | NaN | NaN | 0 | 625.00 | Ленинградский проспект | False |
| 1826 | волконский | булочная | Москва, Ленинградский проспект, 29, корп. 1 | Северный административный округ | ежедневно, 08:00–22:00 | 55.79 | 37.56 | 4.40 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1838 | take and wake | кофейня | Москва, Ленинградский проспект, 31А, стр. 1 | Северный административный округ | пн-пт 08:00–20:00; сб,вс 09:00–19:00 | 55.78 | 37.56 | 4.50 | NaN | Цена чашки капучино:120–190 ₽ | NaN | 155.00 | 1 | 625.00 | Ленинградский проспект | False |
| 1867 | vasilchukí chaihona №1 | ресторан | Москва, Ленинградский проспект, 31А, стр. 1 | Северный административный округ | пн-чт 11:00–00:00; пт,сб 11:00–01:00; вс 11:00... | 55.78 | 37.56 | 4.30 | выше среднего | Средний счёт:от 1500 ₽ | 1500.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 1880 | чайхона айва | кафе | Москва, Ленинградский проспект, 45, корп. 1 | Северный административный округ | ежедневно, круглосуточно | 55.80 | 37.53 | 4.30 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | True |
| 2010 | coffeeteabar | кофейня | Москва, Ленинградский проспект, 60, корп. 1 | Северный административный округ | пн-пт 07:30–20:30; сб 07:30–19:30; вс 08:30–19:30 | 55.80 | 37.54 | 4.40 | низкие | Цена чашки капучино:150–210 ₽ | NaN | 180.00 | 0 | 625.00 | Ленинградский проспект | False |
| 2035 | столичный вкус | столовая | Москва, Ленинградский проспект, 35, стр. 1 | Северный административный округ | пн-пт 09:00–17:00 | 55.79 | 37.55 | 4.10 | NaN | NaN | NaN | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 2087 | лобби-бар манжо | бар,паб | Москва, Ленинградский проспект, 31А, стр. 1 | Северный административный округ | пн-пт 08:30–20:00 | 55.78 | 37.56 | 4.00 | средние | Средний счёт:500 ₽ | 500.00 | NaN | 0 | 625.00 | Ленинградский проспект | False |
| 2104 | ванильное небо | кофейня | Москва, Ленинградский проспект, 31А, стр. 1 | Северный административный округ | пн-пт 08:00–20:00; сб 09:00–18:00 | 55.78 | 37.56 | 3.70 | средние | Средний счёт:400 ₽ | 400.00 | NaN | 1 | 625.00 | Ленинградский проспект | False |
| 2713 | ваня и гоги | бар,паб | Москва, Измайловское шоссе, 71, корп. А | Восточный административный округ | ежедневно, 11:00–06:00 | 55.79 | 37.75 | 4.20 | высокие | Средний счёт:1000–2500 ₽ | 1750.00 | NaN | 0 | 1040.00 | Измайловское шоссе | False |
| 2722 | маргарита | быстрое питание | Москва, Измайловское шоссе, 71, корп. А | Восточный административный округ | ежедневно, 10:00–22:00 | 55.79 | 37.75 | 4.30 | NaN | NaN | NaN | NaN | 1 | 1040.00 | Измайловское шоссе | False |
| 2770 | шоколадница | кофейня | Москва, Измайловское шоссе, 71, корп. А | Восточный административный округ | пн-ср 11:00–23:00; чт 11:00–00:00; пт,сб 11:00... | 55.79 | 37.75 | 4.10 | NaN | NaN | NaN | NaN | 1 | 1040.00 | Измайловское шоссе | False |
| 2901 | ресторан тройка | бар,паб | Москва, Измайловское шоссе, 71, корп. 2Б | Восточный административный округ | ежедневно, 11:00–23:00 | 55.79 | 37.75 | 3.70 | NaN | NaN | NaN | NaN | 0 | 660.00 | Измайловское шоссе | False |
| 2913 | хаус бар | бар,паб | Москва, Измайловское шоссе, 71, корп. 2Б | Восточный административный округ | ежедневно, 07:00–23:00 | 55.79 | 37.75 | 3.70 | средние | Средний счёт:500–1000 ₽ | 750.00 | NaN | 0 | 660.00 | Измайловское шоссе | False |
| 2966 | матрешка | кафе | Москва, Измайловское шоссе, 71, корп. А | Восточный административный округ | NaN | 55.79 | 37.75 | 4.00 | NaN | NaN | NaN | NaN | 0 | 1040.00 | Измайловское шоссе | NaN |
| 4180 | eataly | бар,паб | Москва, Киевская улица, 2 | Западный административный округ | ежедневно, 12:00–23:00 | 55.74 | 37.56 | 4.60 | NaN | NaN | NaN | NaN | 0 | 920.00 | Киевская улица | False |
| 4231 | рестобар argomento | столовая | Москва, Кутузовский проспект, 41, стр. 1 | Западный административный округ | ежедневно, 12:00–23:00 | 55.74 | 37.53 | 4.20 | высокие | Средний счёт:2500–5000 ₽ | 3750.00 | NaN | 0 | 1200.00 | Кутузовский проспект | False |
| 4245 | стейк & бургер | кафе | Москва, Киевская улица, 2 | Западный административный округ | ежедневно, 09:00–21:00 | 55.74 | 37.56 | 4.20 | NaN | NaN | NaN | NaN | 1 | 920.00 | Киевская улица | False |
| 5371 | ресторан мой двор | бар,паб | Москва, улица Сталеваров, 3Л | Восточный административный округ | пн-чт 11:00–00:00; пт,сб 11:00–02:00; вс 11:00... | 55.76 | 37.84 | 4.30 | выше среднего | Средний счёт:1000–1500 ₽ | 1250.00 | NaN | 0 | 585.00 | улица Сталеваров | False |
| 5452 | пончики от бабушки | кафе | Москва, улица Сталеваров, 3Л | Восточный административный округ | ежедневно, 09:00–22:00 | 55.76 | 37.84 | 4.30 | NaN | NaN | NaN | NaN | 0 | 585.00 | улица Сталеваров | False |
| 5486 | дом | кафе | Москва, улица Юности, 1 | Восточный административный округ | NaN | 55.74 | 37.82 | 4.90 | NaN | NaN | NaN | NaN | 0 | 760.00 | улица Юности | NaN |
| 5655 | the fox pub | бар,паб | Москва, Мичуринский проспект, 22, корп. 1 | Западный административный округ | пн-чт 12:00–00:00; пт,сб 12:00–02:00; вс 12:00... | 55.70 | 37.50 | 4.70 | NaN | NaN | NaN | NaN | 0 | 650.00 | Мичуринский проспект | False |
| 5720 | ресторан китайской кухни чуаньюй | ресторан | Москва, Мичуринский проспект, 7, корп. 1 | Западный административный округ | ежедневно, 11:00–23:00 | 55.70 | 37.51 | 4.40 | средние | NaN | NaN | NaN | 0 | 650.00 | Мичуринский проспект | False |
| 5738 | университетское | кофейня | Москва, Мичуринский проспект, 8, стр. 1 | Западный административный округ | ежедневно, 07:00–20:00 | 55.71 | 37.51 | 4.30 | NaN | NaN | NaN | NaN | 0 | 650.00 | Мичуринский проспект | False |
| 5758 | шоколадница | кофейня | Москва, Мичуринский проспект, 22, корп. 1 | Западный административный округ | ежедневно, 08:00–23:00 | 55.70 | 37.50 | 4.20 | средние | Цена чашки капучино:239–274 ₽ | NaN | 256.00 | 1 | 650.00 | Мичуринский проспект | False |
| 5835 | lyanson’s coffee | кафе | Москва, Мичуринский проспект, 27, корп. 1 | Западный административный округ | пн-пт 08:00–20:00 | 55.70 | 37.50 | 3.80 | NaN | NaN | NaN | NaN | 0 | 650.00 | Мичуринский проспект | False |
| 5841 | for your kids | кафе | Москва, Мичуринский проспект, 58, корп. 1 | Западный административный округ | NaN | 55.69 | 37.49 | 3.30 | NaN | NaN | NaN | NaN | 0 | 650.00 | Мичуринский проспект | NaN |
| 6158 | мармелад | кафе | Москва, улица Гарибальди, 1А | Юго-Западный административный округ | ежедневно, 11:00–23:00 | 55.68 | 37.53 | 4.10 | выше среднего | Средний счёт:1000–1500 ₽ | 1250.00 | NaN | 0 | 600.00 | улица Гарибальди | False |
| 6518 | delonixcafe | ресторан | Москва, проспект Вернадского, 94, корп. 1 | Западный административный округ | ежедневно, круглосуточно | 55.65 | 37.48 | 4.10 | высокие | Средний счёт:1500–2000 ₽ | 1750.00 | NaN | 0 | 1288.00 | проспект Вернадского | True |
| 6524 | ян примус | ресторан | Москва, проспект Вернадского, 121, корп. 1 | Западный административный округ | пн-чт 12:00–00:00; пт,сб 12:00–02:00; вс 12:00... | 55.66 | 37.48 | 4.50 | выше среднего | Средний счёт:1500 ₽ | 1500.00 | NaN | 1 | 1288.00 | проспект Вернадского | False |
| 6548 | vibes cafe | кафе | Москва, улица Миклухо-Маклая, 6 | Юго-Западный административный округ | пн-пт 09:00–20:00; сб 09:00–16:00 | 55.65 | 37.50 | 4.40 | NaN | NaN | NaN | NaN | 0 | 644.00 | улица Миклухо-Маклая | False |
| 6574 | мюнгер | пиццерия | Москва, проспект Вернадского, 97, корп. 1 | Западный административный округ | пн-пт 08:00–21:00; сб,вс 10:00–21:00 | 55.67 | 37.49 | 4.80 | NaN | NaN | NaN | NaN | 1 | 1288.00 | проспект Вернадского | False |
| 6641 | one price coffee | кофейня | Москва, проспект Вернадского, 84, стр. 1 | Западный административный округ | ежедневно, 08:30–20:00 | 55.67 | 37.48 | 4.30 | NaN | NaN | NaN | NaN | 1 | 1288.00 | проспект Вернадского | False |
| 6658 | гудбар | бар,паб | Москва, проспект Вернадского, 97, корп. 1 | Западный административный округ | пн-пт 11:00–23:00; сб,вс 13:00–23:00 | 55.67 | 37.49 | 4.10 | средние | Средний счёт:700 ₽ | 700.00 | NaN | 0 | 1288.00 | проспект Вернадского | False |
| 6684 | пивной ресторан | бар,паб | Москва, проспект Вернадского, 121, корп. 1 | Западный административный округ | NaN | 55.66 | 37.48 | 4.50 | NaN | NaN | NaN | NaN | 0 | 1288.00 | проспект Вернадского | NaN |
| 6690 | японская кухня | ресторан | Москва, проспект Вернадского, 121, корп. 1 | Западный административный округ | NaN | 55.66 | 37.48 | 4.40 | NaN | NaN | NaN | NaN | 1 | 1288.00 | проспект Вернадского | NaN |
| 6696 | кабул | ресторан | Москва, улица Миклухо-Маклая, 6 | Юго-Западный административный округ | пн-пт 07:00–21:00; сб 07:00–18:00 | 55.65 | 37.50 | 4.30 | NaN | NaN | NaN | NaN | 1 | 644.00 | улица Миклухо-Маклая | False |
| 6771 | точка | кафе | Москва, проспект Вернадского, 84, стр. 1 | Западный административный округ | NaN | 55.67 | 37.48 | 4.70 | NaN | NaN | NaN | NaN | 1 | 1288.00 | проспект Вернадского | NaN |
| 6807 | loft-cafe академия | кафе | Москва, проспект Вернадского, 84, стр. 1 | Западный административный округ | пн-пт 09:00–20:00; сб 09:00–16:00 | 55.67 | 37.48 | 3.60 | NaN | NaN | NaN | NaN | 0 | 1288.00 | проспект Вернадского | False |
| 6808 | яндекс лавка | ресторан | Москва, проспект Вернадского, 51, стр. 1 | Западный административный округ | ежедневно, круглосуточно | 55.67 | 37.51 | 4.00 | NaN | NaN | NaN | NaN | 1 | 1288.00 | проспект Вернадского | True |
| 6838 | alternative coffee | кофейня | Москва, проспект Вернадского, 41, стр. 1 | Западный административный округ | пн-пт 09:00–21:00; сб,вс 09:00–22:00 | 55.67 | 37.50 | 4.30 | NaN | NaN | NaN | NaN | 0 | 1288.00 | проспект Вернадского | False |
| 7987 | ресторан | ресторан | Москва, улица Маршала Захарова, 6, корп. 1 | Южный административный округ | NaN | 55.62 | 37.70 | 4.50 | NaN | NaN | NaN | NaN | 0 | 675.00 | улица Маршала Захарова | NaN |
Путем анализа данных заведений в открытых источниках, я выявила, что в них гораздо меньше мест, чем указано в датасете. Предполагаю, что был добавлен лишний 0, поэтому поделим на 10.
seats_over_500 = df[df['seats'] > 500]
count_seats_over_500 = seats_over_500.shape[0]
count_seats_over_500
56
df.loc[df['seats'] > 500, 'seats'] /= 10
# анализируем количество посадочных мест второй раз
plt.figure(figsize=(12, 3))
sns.boxplot(x=df['seats'])
plt.title('Ящик с усами для посадочных мест заведений')
plt.xlabel('Посадочные места')
plt.show()
Оставим так, поскольку все равно существуют места для банкентных залов с большим количеством гостей
# Создаем цветовую палитру
# Определяем цвета с помощью seaborn
colors_seaborn = {
'кафе': sns.color_palette("Set3")[0],
'ресторан': sns.color_palette("Set3")[1],
'кофейня': sns.color_palette("Set3")[2],
'бар,паб': sns.color_palette("Set3")[3],
'пиццерия': sns.color_palette("Set3")[4],
'быстрое питание': sns.color_palette("Set3")[5],
'столовая': sns.color_palette("Set3")[6],
'булочная': sns.color_palette("Set3")[7]
}
# Преобразуем цвета в формат RGB
colors_rgb = {key: f'rgb{tuple(map(int, (color[0] * 255, color[1] * 255, color[2] * 255)))}' for key,
color in colors_seaborn.items()}
# Группировка по категориям и подсчет количества объектов
category_count = df.groupby('category')['name'].count().reset_index()
category_count.columns = ['category', 'count']
category_count = category_count.sort_values(by='count', ascending=False)
fig = px.bar(category_count, x='category', y='count',
title='Распределение объектов по категориям (по убыванию)',
labels={'category': 'Категория', 'count': 'Количество'},
color='category',
color_discrete_map=colors_rgb)
fig.update_layout(title_x=0.5, xaxis_title=None, yaxis_title='Количество', width=900,
height=400, showlegend=False)
fig.show()
На первом месте по количеству заведений - кафе, на втором - рестораны, на третьем - кофейни. Булочные оказались на последнем месте.
order = df.groupby(["category"])["seats"].median().sort_values(ascending=False).index
plt.figure(figsize=(15, 4))
ax = sns.boxplot(data=df, x='seats', y='category', order=order, palette=colors_seaborn)
plt.title('Распределение количества посадочных мест по типам заведений')
plt.xlabel('Количество мест')
plt.ylabel('Тип заведений')
plt.xlim(0, 350)
plt.show()
df['category'].value_counts()
кафе 2375 ресторан 2041 кофейня 1411 бар,паб 764 пиццерия 633 быстрое питание 602 столовая 315 булочная 256 Name: category, dtype: int64
chain = df['chain'].value_counts().reset_index()
chain.columns = ['chain', 'count']
chain
| chain | count | |
|---|---|---|
| 0 | 0 | 5195 |
| 1 | 1 | 3202 |
chain = df['chain'].value_counts().reset_index()
chain.columns = ['chain', 'count']
plt.figure(figsize=(2, 2))
plt.pie(chain['count'], labels=['Несетевые', 'Сетевые'], autopct='%1.0f%%', startangle=100, colors=['skyblue', 'lightgreen'])
plt.title('Доля заведений по типу сети')
plt.axis('equal')
plt.show()
chain_objects = df.groupby(['category', 'chain'])['name'].count().reset_index()
chain_objects.columns = ['category', 'chain', 'count']
chain_objects['chain'] = chain_objects['chain']
chain_objects = chain_objects.sort_values(['count', 'chain'], ascending = False)
chain_objects
| category | chain | count | |
|---|---|---|---|
| 6 | кафе | 0 | 1596 |
| 12 | ресторан | 0 | 1312 |
| 7 | кафе | 1 | 779 |
| 13 | ресторан | 1 | 729 |
| 9 | кофейня | 1 | 719 |
| 8 | кофейня | 0 | 692 |
| 0 | бар,паб | 0 | 596 |
| 4 | быстрое питание | 0 | 370 |
| 11 | пиццерия | 1 | 330 |
| 10 | пиццерия | 0 | 303 |
| 5 | быстрое питание | 1 | 232 |
| 14 | столовая | 0 | 227 |
| 1 | бар,паб | 1 | 168 |
| 3 | булочная | 1 | 157 |
| 2 | булочная | 0 | 99 |
| 15 | столовая | 1 | 88 |
chain_objects = df[df['chain'] == 1]
non_chain_objects = df[df['chain'] == 0]
# Группируем данные
grouped_chain = chain_objects.groupby(['category']).size().reset_index(name='count_chain')
grouped_non_chain = non_chain_objects.groupby(['category']).size().reset_index(name='count_non_chain')
merged_data = pd.merge(grouped_chain, grouped_non_chain, on='category', how='outer')
# Сортируем по убыванию
merged_data['total'] = merged_data['count_chain'] + merged_data['count_non_chain']
merged_data = merged_data.sort_values(by='total', ascending=False)
fig = go.Figure()
fig.add_trace(go.Bar(x=merged_data['category'], y=merged_data['count_chain'], name='Сетевые',
marker_color='#8DD3C7'))
fig.add_trace(go.Bar(x=merged_data['category'], y=merged_data['count_non_chain'], name='Несетевые',
marker_color='#FBC5BE'))
for i, row in merged_data.iterrows():
total = row['total']
chain_percent = (row['count_chain'] / total) * 100
fig.add_annotation(x=row['category'], y=row['count_chain'], text=f"{chain_percent:.0f}%",
showarrow=False, font=dict(color='#000000', size=10), xshift=0, yshift=-8)
for i, row in merged_data.iterrows():
total = row['total']
non_chain_percent = (row['count_non_chain'] / total) * 100
fig.add_annotation(x=row['category'], y=row['count_chain'] + row['count_non_chain'],
text=f"{non_chain_percent:.0f}%", showarrow=False,
font=dict(color='#000000', size=10), xshift=0, yshift=5)
fig.update_layout(title='Количество сетевых и несетевых объектов по типу заведения',
xaxis_title='Тип заведения',
yaxis_title='Количество объектов',
barmode='stack',
title_x=0.5,
legend_title='Тип объекта',
template='plotly_white')
fig.show()
top = df[df['chain'] == 1]
top15 = top.groupby('name').agg({'rating': 'median', 'category' : pd.Series.mode, 'district' : 'count'})
top15 = top15.rename(columns={'district':'count'})
top15 = top15.sort_values('count', ascending = False).reset_index().head(15)
top15
| name | rating | category | count | |
|---|---|---|---|---|
| 0 | шоколадница | 4.20 | кофейня | 120 |
| 1 | доминос пицца | 4.20 | пиццерия | 76 |
| 2 | додо пицца | 4.30 | пиццерия | 74 |
| 3 | one price coffee | 4.20 | кофейня | 71 |
| 4 | яндекс лавка | 4.00 | ресторан | 69 |
| 5 | cofix | 4.10 | кофейня | 65 |
| 6 | prime | 4.20 | ресторан | 50 |
| 7 | хинкальная | 4.40 | кафе | 44 |
| 8 | кофепорт | 4.20 | кофейня | 42 |
| 9 | кулинарная лавка братьев караваевых | 4.40 | кафе | 39 |
| 10 | теремок | 4.10 | ресторан | 38 |
| 11 | чайхана | 4.10 | кафе | 37 |
| 12 | пекарня буханка | 4.40 | булочная | 36 |
| 13 | cofe fest | 4.05 | кофейня | 32 |
| 14 | му-му | 4.30 | кафе | 27 |
# Фильтрация данных
top = df[df['chain'] == 1]
top15 = top.groupby('name').agg({'rating': 'median', 'category': pd.Series.mode, 'district': 'count'})
top15 = top15.rename(columns={'district': 'count'})
top15 = top15.sort_values('count', ascending=False).reset_index().head(15)
plt.figure(figsize=(10, 4))
sns.barplot(x='count', y='name', data=top15, palette='Set3')
plt.title('Топ-15 сетевых объектов')
plt.xlabel('Количество объектов')
plt.ylabel('Название объекта')
plt.show()
# количество объектов каждой категории в ТОП-15
category_counts_top15 = top15['category'].value_counts()
category_counts_top15
кофейня 5 кафе 4 ресторан 3 пиццерия 2 булочная 1 Name: category, dtype: int64
total_count = category_counts_top15.sum()
percentages = (category_counts_top15 / total_count) * 100
plt.figure(figsize=(12, 3))
ax = sns.barplot(x=category_counts_top15.values, y=category_counts_top15.index, palette=colors_seaborn)
for i, percentage in enumerate(percentages):
ax.text(category_counts_top15.values[i], i, f'{percentage:.2f}%', color='black', ha="right")
plt.title('Распределение категорий объектов в ТОП-15')
plt.xlabel('Количество объектов')
plt.ylabel('Категория')
plt.show()
Таким образом, мы видим, что наиболее популярной категорией заведений в ТОП-15 оказалась категория "кофейни". Далее по уменьшению популярности идут кафе, рестораны, пиццерии,булочные.
df['district'].unique()
array(['Северный административный округ',
'Северо-Восточный административный округ',
'Северо-Западный административный округ',
'Западный административный округ',
'Центральный административный округ',
'Восточный административный округ',
'Юго-Восточный административный округ',
'Южный административный округ',
'Юго-Западный административный округ'], dtype=object)
district_top = df.groupby(['district', 'category']).agg({'address': 'count', 'rating': 'mean'})
district_top = district_top.rename(columns={'address':'count'})
district_top = district_top.reset_index().sort_values('district', ascending=False)
district_top.head(8)
| district | category | count | rating | |
|---|---|---|---|---|
| 71 | Южный административный округ | столовая | 44 | 4.26 |
| 70 | Южный административный округ | ресторан | 201 | 4.21 |
| 69 | Южный административный округ | пиццерия | 73 | 4.26 |
| 68 | Южный административный округ | кофейня | 131 | 4.23 |
| 67 | Южный административный округ | кафе | 263 | 4.09 |
| 66 | Южный административный округ | быстрое питание | 85 | 4.10 |
| 65 | Южный административный округ | булочная | 25 | 4.34 |
| 64 | Южный административный округ | бар,паб | 68 | 4.28 |
# Группируем данные по районам и подсчитываем общее количество объектов в каждом районе
district_total_count = district_top.groupby('district')['count'].sum().reset_index()
# Присоединяем общее количество объектов к исходным данным
district_top_sorted = district_top.merge(district_total_count, on='district', suffixes=('', '_total'))
# Сортируем данные сначала по общему количеству объектов, а затем по каждой категории
district_top_sorted = district_top_sorted.sort_values(by=['count_total', 'count'], ascending=[False, False])
# Создаем цветовую палитру
category_colors = [colors_rgb.get(category, 'grey') for category in district_top_sorted['category'].unique()]
# Визуализируем
fig = px.bar(district_top_sorted,
x='count',
y='district',
color='category',
orientation='h',
title='Количество объектов общественного питания по районам с разбивкой по категориям',
labels={'count': 'Количество объектов', 'district': 'Район', 'category': 'Категория'},
color_discrete_map=dict(zip(district_top_sorted['category'].unique(), category_colors)),
text=district_top_sorted['count'].apply(lambda x: str(x)))
fig.update_layout(width=900, height=400)
fig.update_traces(textfont=dict(size=10))
fig.show()
# Рассчитываем относительные значения
district_top_sorted['relative_count'] = district_top_sorted['count'] / district_top_sorted['count_total']
category_colors = [colors_rgb.get(category, 'grey') for category in district_top_sorted['category'].unique()]
fig = px.bar(district_top_sorted,
x='relative_count',
y='district',
color='category',
orientation='h',
title='Относительное количество объектов общественного питания по районам с разбивкой по категориям',
labels={'relative_count': 'Относительное количество объектов', 'district': 'Район', 'category': 'Категория'},
color_discrete_map=dict(zip(district_top_sorted['category'].unique(), category_colors)),
text=district_top_sorted['relative_count'].apply(lambda x: f"{x*100:.2f}%"))
fig.update_layout(width=900, height=400)
fig.update_traces(textposition='inside')
fig.show()
rat = df.groupby('category').agg({'rating': 'mean'}).round(2).sort_values('rating', ascending=False).reset_index()
rat
| category | rating | |
|---|---|---|
| 0 | бар,паб | 4.39 |
| 1 | пиццерия | 4.30 |
| 2 | ресторан | 4.29 |
| 3 | кофейня | 4.28 |
| 4 | булочная | 4.27 |
| 5 | столовая | 4.21 |
| 6 | кафе | 4.12 |
| 7 | быстрое питание | 4.05 |
plt.figure(figsize=(15, 4))
sns.histplot(data=df, x='rating', hue='category', kde=True, bins=20)
plt.title('Распределение средних рейтингов по категориям заведений')
plt.xlabel('Рейтинг')
plt.ylabel('Частота')
plt.legend(title='Категория', labels=df['category'].unique())
# Установка начальной точки оси X
plt.gca().set_xlim(3, None)
plt.gca().xaxis.set_major_locator(MultipleLocator(0.1))
plt.grid(axis='x', linestyle='--', linewidth=0.5)
plt.show()
mean_ratings = df.groupby('category')['rating'].mean().sort_values()
mean_ratings_df = pd.DataFrame({'category': mean_ratings.index, 'mean_rating': mean_ratings.values})
# Сортируем
df_sorted = df.merge(mean_ratings_df, on='category').sort_values(by='mean_rating')
plt.figure(figsize=(15, 5))
sns.violinplot(data=df_sorted, x='category', y='rating', palette=colors_seaborn)
plt.title('Распределение средних рейтингов по категориям заведений')
plt.xlabel('Категория заведения')
plt.ylabel('Средний рейтинг')
plt.xticks(rotation=45)
plt.grid(True)
plt.show()
Посмотрим без выбросов:
mean_ratings = df.groupby('category')['rating'].mean().sort_values()
mean_ratings_df = pd.DataFrame({'category': mean_ratings.index, 'mean_rating': mean_ratings.values})
# Сортируем
df_sorted = df.merge(mean_ratings_df, on='category').sort_values(by='mean_rating')
plt.figure(figsize=(15, 5))
sns.violinplot(data=df_sorted, x='category', y='rating', palette=colors_seaborn)
plt.title('Распределение средних рейтингов по категориям заведений')
plt.xlabel('Категория заведения')
plt.ylabel('Средний рейтинг')
plt.ylim(3.5, 5)
plt.xticks(rotation=45)
plt.grid(True)
plt.show()
rating_df = df.groupby('district', as_index=False)['rating'].agg('mean').round(2)
with open('/datasets/admin_level_geomap.geojson', 'r') as f:
geo_json = json.load(f)
state_geo = '/datasets/admin_level_geomap.geojson'
# moscow_lat - широта центра Москвы, moscow_lng - долгота центра Москвы
moscow_lat, moscow_lng = 55.751244, 37.618423
# создаём карту Москвы
map_1 = Map(location=[moscow_lat, moscow_lng], zoom_start=10)
# создаём хороплет и добавляем его на карту
Choropleth(
geo_data=state_geo,
data=rating_df,
columns=['district', 'rating'],
key_on='feature.name',
fill_color='YlGnBu',
fill_opacity=0.7,
line_opacity=0.5,
line_color='green',
legend_name='Средний рейтинг заведений по районам',
).add_to(map_1)
# выводим карту
map_1
# moscow_lat - широта центра Москвы, moscow_lng - долгота центра Москвы
moscow_lat, moscow_lng = 55.751244, 37.618423
# создаём карту Москвы
map_2 = Map(location=[moscow_lat, moscow_lng], zoom_start=10)
# создаём пустой кластер, добавляем его на карту
marker_cluster = MarkerCluster().add_to(map_2)
# пишем функцию, которая принимает строку датафрейма,
# создаёт маркер в текущей точке и добавляет его в кластер marker_cluster
def create_clusters(row):
Marker(
[row['lat'], row['lng']],
popup=f"{row['name']} {row['rating']}",
).add_to(marker_cluster)
# применяем функцию create_clusters() к каждой строке датафрейма
df.apply(create_clusters, axis=1)
map_2
streets_moscow = df[df['street'].notnull()]
top_15_streets = streets_moscow['street'].value_counts().reset_index().head(15)
top_15_streets.columns = ['street_name', 'count']
# Добавим также категории к улицам
streets_category = df.groupby(['street', 'category'])['name'].count().reset_index()
streets_category.columns = ['street_name', 'category', 'count']
streets_category.sort_values('count', ascending=False)
# Топ-15
top_15_new = streets_category[streets_category['street_name'].isin(top_15_streets['street_name'])]
# Проверим
top_15_new
| street_name | category | count | |
|---|---|---|---|
| 683 | Варшавское шоссе | бар,паб | 6 |
| 684 | Варшавское шоссе | быстрое питание | 7 |
| 685 | Варшавское шоссе | кафе | 18 |
| 686 | Варшавское шоссе | кофейня | 14 |
| 687 | Варшавское шоссе | пиццерия | 4 |
| ... | ... | ... | ... |
| 3434 | улица Миклухо-Маклая | быстрое питание | 4 |
| 3435 | улица Миклухо-Маклая | кафе | 21 |
| 3436 | улица Миклухо-Маклая | кофейня | 4 |
| 3437 | улица Миклухо-Маклая | пиццерия | 2 |
| 3438 | улица Миклухо-Маклая | ресторан | 15 |
111 rows × 3 columns
fig = px.bar(top_15_new,
x='count',
y='street_name',
template='plotly_white',
color='category',
color_discrete_map=colors_rgb
)
fig.update_layout(title='Количество заведений в разрезе улиц и категорий',
xaxis_title='Количество заведений',
yaxis_title='Название улиц',
yaxis={'categoryorder': 'total ascending'}
)
fig.show()
# Подсчитываем количество заведений на каждой улице
street_counts = df['street'].value_counts()
# Отбираем улицы, на которых расположено только одно заведение общественного питания
single_catering_streets = street_counts[street_counts == 1].index
# Фильтруем датафрейм по этим улицам
one_catering = df[df['street'].isin(single_catering_streets)]
one_catering
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | street | is_all_day | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 15 | дом обеда | столовая | Москва, улица Бусиновская Горка, 2 | Северный административный округ | пн-пт 08:30–18:30; сб 10:00–20:00 | 55.89 | 37.49 | 4.10 | средние | Средний счёт:300–500 ₽ | 400.00 | NaN | 0 | 180.00 | улица Бусиновская Горка | False |
| 21 | 7/12 | кафе | Москва, Прибрежный проезд, 7 | Северный административный округ | ежедневно, 10:00–22:00 | 55.88 | 37.46 | 4.50 | NaN | NaN | NaN | NaN | 0 | NaN | Прибрежный проезд | False |
| 25 | в парке вкуснее | кофейня | Москва, парк Левобережный | Северный административный округ | ежедневно, 10:00–21:00 | 55.88 | 37.46 | 4.30 | NaN | NaN | NaN | NaN | 1 | NaN | парк Левобережный | False |
| 58 | coffeekaldis | кофейня | Москва, Угличская улица, 13, стр. 8 | Северо-Восточный административный округ | ежедневно, 09:00–22:00 | 55.90 | 37.57 | 4.10 | средние | Средний счёт:500–800 ₽ | 650.00 | NaN | 1 | NaN | Угличская улица | False |
| 60 | чебуречная история | кофейня | Москва, ландшафтный заказник Лианозовский | Северо-Восточный административный округ | ежедневно, 10:00–22:00 | 55.90 | 37.57 | 4.90 | NaN | NaN | NaN | NaN | 1 | NaN | ландшафтный заказник Лианозовский | False |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 8289 | мираж | ресторан | Москва, улица Шкулёва, 2А | Юго-Восточный административный округ | пн-пт 11:00–23:00; сб,вс 11:00–00:00 | 55.69 | 37.75 | 4.70 | NaN | NaN | NaN | NaN | 0 | 90.00 | улица Шкулёва | False |
| 8294 | wtfcoffee | кофейня | Москва, улица Артюхиной, 14/8с1 | Юго-Восточный административный округ | ежедневно, 10:00–22:00 | 55.70 | 37.74 | 4.40 | средние | NaN | NaN | NaN | 0 | NaN | улица Артюхиной | False |
| 8317 | беседка | кафе | Москва, Кузьминская улица, 10 | Юго-Восточный административный округ | ежедневно, 11:00–23:00 | 55.69 | 37.79 | 4.10 | NaN | NaN | NaN | NaN | 1 | NaN | Кузьминская улица | False |
| 8379 | лагман хаус | кафе | Москва, Новороссийская улица, 14, стр. 2 | Юго-Восточный административный округ | ежедневно, 10:00–00:00 | 55.68 | 37.76 | 4.30 | NaN | NaN | NaN | NaN | 1 | 40.00 | Новороссийская улица | False |
| 8400 | практика кофе | кофейня | Москва, Чонгарский бульвар, 26А, корп. 1 | Юго-Западный административный округ | пн-пт 08:00–22:00; сб,вс 09:00–22:00 | 55.65 | 37.60 | 4.40 | NaN | NaN | NaN | NaN | 0 | 55.00 | Чонгарский бульвар | False |
458 rows × 16 columns
# Координаты Москвы
moscow_lat, moscow_lng = 55.751244, 37.618423
# Создаем карту Москвы
map_one_catering = folium.Map(location=[moscow_lat, moscow_lng], zoom_start=11)
# Создаем кластер маркеров
marker_cluster = MarkerCluster().add_to(map_one_catering)
# Добавляем маркеры для каждого заведения
for index, row in one_catering.iterrows():
folium.Marker(
location=[row['lat'], row['lng']],
popup=f"{row['name']} ({row['category']})",
icon=None
).add_to(marker_cluster)
# Отображаем карту
map_one_catering
Улицы, на которых расположен лишь один объект общественного питания, раскиданы по всей Москве, карта не дала ясно понять причины. Попробуем рассмотреть категории таких заведений.
# Выводим таблицу с категориями заведений, которые расположены на улицах с только одним заведением
one_catering_categories = df[df['street'].isin(one_catering['street'])]['category'].value_counts().reset_index()
one_catering_categories.columns = ['category', 'count']
one_catering_categories
| category | count | |
|---|---|---|
| 0 | кафе | 160 |
| 1 | ресторан | 93 |
| 2 | кофейня | 84 |
| 3 | бар,паб | 39 |
| 4 | столовая | 36 |
| 5 | быстрое питание | 23 |
| 6 | пиццерия | 15 |
| 7 | булочная | 8 |
# Считаем медиану среднего чека для каждого района
median_bill = df.groupby('district')['middle_avg_bill'].median().reset_index()
median_bill
| district | middle_avg_bill | |
|---|---|---|
| 0 | Восточный административный округ | 575.00 |
| 1 | Западный административный округ | 1000.00 |
| 2 | Северный административный округ | 650.00 |
| 3 | Северо-Восточный административный округ | 500.00 |
| 4 | Северо-Западный административный округ | 700.00 |
| 5 | Центральный административный округ | 1000.00 |
| 6 | Юго-Восточный административный округ | 450.00 |
| 7 | Юго-Западный административный округ | 600.00 |
| 8 | Южный административный округ | 500.00 |
# Визуализируем средние чеки на карте Москвы
map_4 = Map(location=[moscow_lat, moscow_lng], zoom_start=10)
Choropleth(
geo_data=state_geo,
data=median_bill,
columns=['district', 'middle_avg_bill'],
key_on='feature.name',
legend_name='Средний чек заведений по районам',
fill_color='YlGnBu',
fill_opacity=0.7,
line_opacity=0.5,
line_color='white'
).add_to(map_4)
map_4
# Просмотр уникальных значений в столбце "hours"
unique_hours = df['hours'].unique()
print(unique_hours)
# Подсчет количества уникальных значений
num_unique_hours = len(unique_hours)
print("Количество уникальных значений:", num_unique_hours)
['ежедневно, 10:00–22:00' 'пн-чт 11:00–02:00; пт,сб 11:00–05:00; вс 11:00–02:00' 'ежедневно, 09:00–22:00' ... 'пн-пт 08:30–21:30; сб,вс 09:00–21:30' 'пн-чт 13:00–22:00; пт,сб 13:00–22:30; вс 13:00–22:00' 'пн-сб 10:30–21:30'] Количество уникальных значений: 1305
def categorize_hours(hours_str):
time_pattern = r'\d{1,2}:\d{2}'
times = re.findall(time_pattern, hours_str)
if times:
start_time = times[0]
end_time = times[-1]
start_hour, start_minute = map(int, start_time.split(':'))
end_hour, end_minute = map(int, end_time.split(':'))
# Категории временные
if start_hour < 6 or start_hour >= 23:
return 'Ночь'
elif start_hour < 11:
return 'Утро'
elif start_hour < 15:
return 'День'
elif start_hour < 19:
return 'Вечер'
else:
return 'Ночь'
else:
return 'Неизвестно'
df['hours'] = df['hours'].astype(str)
df['hours_category'] = df['hours'].apply(categorize_hours)
palette = [colors_seaborn[key] for key in df['category'].unique()]
plt.figure(figsize=(12, 4))
sns.countplot(data=df, x='hours_category', hue='category', palette=palette)
plt.title('Распределение часов открытия заведения')
plt.xlabel('Часы открытия')
plt.ylabel('Количество')
plt.legend(title='Категория заведения', title_fontsize='large', loc='upper right')
plt.show()
plt.figure(figsize=(10, 8))
sns.countplot(data=df, y='category', hue='rating', palette='PiYG', linewidth=0.5, orient='h')
plt.title('Распределение категорий заведений по рейтингам')
plt.xlabel('Количество')
plt.ylabel('Категория заведения')
legend_labels = [1, 2, 3, 4, 5]
legend_colors = sns.color_palette('PiYG', n_colors=len(legend_labels))
custom_legend = [plt.Line2D([0], [0], marker='o', color='w', label=label,
markerfacecolor=color, markersize=10)
for label, color in zip(legend_labels, legend_colors)]
plt.legend(custom_legend, legend_labels, title='Рейтинг', title_fontsize='large', loc='upper right', fontsize='large')
plt.tight_layout()
plt.show()
# Вычисляем медианы рейтингов
median_ratings = df.groupby('category')['rating'].median().sort_values()
# Создаем палитру, отсортированную по медианам
palette = [colors_seaborn[category] for category in median_ratings.index]
# Создаем ящик с усами
plt.figure(figsize=(10, 5))
sns.boxplot(data=df, x='category', y='rating', palette=palette, order=median_ratings.index)
plt.title('Распределение рейтингов по категориям заведений (отсортировано по медианам)')
plt.xlabel('Категория заведения')
plt.ylabel('Рейтинг')
plt.grid(True, axis='y')
plt.xticks(rotation=45, ha='right')
plt.tight_layout()
plt.show()
df['avg_bill'] = df['avg_bill'].str.extract(r'(\d+)').astype(float)
low_rating_df = df[df['rating'] < 3]
plt.figure(figsize=(10, 3))
sns.histplot(low_rating_df['avg_bill'], bins=20, kde=True, palette=colors_seaborn)
plt.title('Распределение средних чеков в заведениях с рейтингом ниже 3')
plt.xlabel('Средний чек')
plt.ylabel('Частота')
plt.grid(True)
plt.show()
low_rating_df['avg_bill'].shape[0]
209
Выборка крайне мало для обоснованных выводов, однако по ней видно, что:
coffee = df[df['category'] == 'кофейня']
len(coffee)
1411
grouped_data = coffee.groupby('district')
count_per_dis = grouped_data.size()
count_per_dis
district Восточный административный округ 105 Западный административный округ 149 Северный административный округ 192 Северо-Восточный административный округ 159 Северо-Западный административный округ 62 Центральный административный округ 428 Юго-Восточный административный округ 89 Юго-Западный административный округ 96 Южный административный округ 131 dtype: int64
# создаём карту Москвы
map_5 = Map(location=[moscow_lat, moscow_lng], zoom_start=10)
# создаём пустой кластер, добавляем его на карту
marker_cluster = MarkerCluster().add_to(map_5)
# пишем функцию, которая принимает строку датафрейма,
# создаёт маркер в текущей точке и добавляет его в кластер marker_cluster
def create_clusters(row):
Marker(
[row['lat'], row['lng']],
popup=f"{row['name']} {row['rating']}",
).add_to(marker_cluster)
# применяем функцию create_clusters() к каждой строке датафрейма
coffee.apply(create_clusters, axis=1)
# выводим карту
map_5
print('Количество круглосуточных кофеен:', coffee['is_all_day'].sum())
Количество круглосуточных кофеен: 59
is_24_coffee = coffee[coffee['is_all_day'] == True]
district_counts = is_24_coffee['district'].value_counts().reset_index()\
.rename(columns={'index': 'district', 'district': 'count'})
district_counts_sorted = district_counts.sort_values(by='count', ascending=False)
plt.figure(figsize=(10, 4))
sns.countplot(data=is_24_coffee, y='district', order=district_counts_sorted['district'], palette="Set3")
plt.title('Количество круглосуточных кофеен по округам Москвы (отсортировано)')
plt.xlabel('Количество круглосуточных кофеен')
plt.ylabel('Округ')
plt.xticks(fontsize=10)
plt.yticks(rotation=0, ha='right')
plt.tight_layout()
plt.show()
rat_cof = coffee.groupby('district', as_index=False)['rating']\
.agg('mean').round(2)\
.sort_values('rating', ascending=False)
rat_cof
| district | rating | |
|---|---|---|
| 5 | Центральный административный округ | 4.34 |
| 4 | Северо-Западный административный округ | 4.33 |
| 2 | Северный административный округ | 4.30 |
| 0 | Восточный административный округ | 4.28 |
| 7 | Юго-Западный административный округ | 4.28 |
| 6 | Юго-Восточный административный округ | 4.23 |
| 8 | Южный административный округ | 4.23 |
| 3 | Северо-Восточный административный округ | 4.22 |
| 1 | Западный административный округ | 4.19 |
# создаём карту
map_6 = Map(location=[moscow_lat, moscow_lng], zoom_start=10)
# создаём хороплет с помощью конструктора Choropleth и добавляем его на карту
Choropleth(
geo_data=state_geo,
data=rat_cof,
columns=['district', 'rating'],
key_on='feature.name',
fill_color='YlGnBu',
fill_opacity=0.7,
line_opacity=0.5,
line_color='green'
).add_to(map_6)
# выводим карту
map_6
# Найдем средние цены чашки кофе по округам
one_cup = coffee.groupby('district', as_index=False)['middle_coffee_cup'] \
.agg('median') \
.round(0) \
.sort_values('middle_coffee_cup', ascending=False)
one_cup_mean = round(one_cup['middle_coffee_cup'].mean())
one_cup['middle_coffee_cup'] = one_cup['middle_coffee_cup'].map(int)
display(one_cup)
one_cup_mean
| district | middle_coffee_cup | |
|---|---|---|
| 7 | Юго-Западный административный округ | 198 |
| 5 | Центральный административный округ | 190 |
| 1 | Западный административный округ | 189 |
| 4 | Северо-Западный административный округ | 165 |
| 3 | Северо-Восточный административный округ | 162 |
| 2 | Северный административный округ | 159 |
| 8 | Южный административный округ | 150 |
| 6 | Юго-Восточный административный округ | 148 |
| 0 | Восточный административный округ | 135 |
166
sorted_districts = df.query('category == "кофейня"') \
.groupby('district')['middle_coffee_cup'] \
.median() \
.sort_values(ascending=False) \
.index
fig = px.box(df.query('category == "кофейня"'),
y='district',
x='middle_coffee_cup',
title='Средний чек за кофе по округам',
color='district',
color_discrete_map=colors_seaborn,
category_orders={'district': sorted_districts},
orientation='h')
fig.update_layout(xaxis_title='Рейтинг',
yaxis_title='Район',
showlegend=False,
xaxis=dict(range=[0, 400]))
fig.show()
Посмотрим на выбросы в ценах на кофе
expensive_coffee_shops = df.query('category == "кофейня" & middle_coffee_cup > 250')
expensive_coffee_shops.head()
| name | category | address | district | hours | lat | lng | rating | price | avg_bill | middle_avg_bill | middle_coffee_cup | chain | seats | street | is_all_day | hours_category | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 151 | шоколадница | кофейня | Москва, Дмитровское шоссе, 163Ак1 | Северо-Восточный административный округ | ежедневно, 10:00–22:00 | 55.91 | 37.54 | 4.10 | NaN | 239.00 | NaN | 256.00 | 1 | NaN | Дмитровское шоссе | False | Утро |
| 240 | шоколадница | кофейня | Москва, Широкая улица, 13А | Северо-Восточный административный округ | ежедневно, 10:00–21:00 | 55.89 | 37.66 | 4.10 | NaN | 239.00 | NaN | 256.00 | 1 | 75.00 | Широкая улица | False | Утро |
| 343 | шоколадница | кофейня | Москва, Фестивальная улица, 13, корп. 1 | Северный административный округ | ежедневно, 08:00–23:00 | 55.86 | 37.48 | 4.30 | NaN | 239.00 | NaN | 256.00 | 1 | 100.00 | Фестивальная улица | False | Утро |
| 360 | шоколадница | кофейня | Москва, Сходненская улица, 25 | Северо-Западный административный округ | ежедневно, 08:00–23:00 | 55.85 | 37.44 | 4.30 | средние | 239.00 | NaN | 256.00 | 1 | 130.00 | Сходненская улица | False | Утро |
| 455 | шоколадница | кофейня | Москва, улица Адмирала Макарова, 6, стр. 13 | Северный административный округ | пн-чт 08:00–22:00; пт 08:00–23:00; сб,вс 09:00... | 55.84 | 37.49 | 4.20 | средние | 239.00 | NaN | 256.00 | 1 | 80.00 | улица Адмирала Макарова | False | Утро |
avg_price_by_street = df.groupby('street')['middle_coffee_cup'].median()
avg_rating_by_street = df.groupby('street')['rating'].mean()
top_price_streets = avg_price_by_street.sort_values(ascending=False).head(15)
top_rating_streets = avg_rating_by_street.sort_values(ascending=False).head(15)
# Преобразуем значения в целые числа и округляем
top_price_streets_rounded = top_price_streets.astype(int).round(0)
# Выводим ТОП-15 улиц
print("ТОП-15 улиц с самой высокой средней ценой чашки кофе:")
print(top_price_streets_rounded)
print('*'*50)
print("\nТОП-15 улиц с самыми высокими средними рейтингами:")
print(top_rating_streets)
ТОП-15 улиц с самой высокой средней ценой чашки кофе: street Большая Семёновская улица 851 Большая Никитская улица 328 3-я Фрунзенская улица 320 Богословский переулок 300 Большая Сухаревская площадь 300 улица Гарибальди 291 3-й Крутицкий переулок 291 площадь Победы 291 Милютинский переулок 290 Енисейская улица 287 Стремянный переулок 285 Мясницкая улица 283 улица Серпуховский Вал 275 улица 1812 года 275 2-й Сыромятнический переулок 275 Name: middle_coffee_cup, dtype: int64 ************************************************** ТОП-15 улиц с самыми высокими средними рейтингами: street 1-й Рижский переулок 5.00 парк Технических видов спорта 5.00 Гурьевский проезд 5.00 3-я Радиаторская улица 5.00 Архангельский переулок 5.00 2-й Силикатный проезд 5.00 Замоскворецкая линия 5.00 1-я Фрунзенская улица 5.00 Светлогорский проезд 5.00 природно-исторический парк Измайлово 5.00 Зоологическая улица 5.00 музей-заповедник Коломенское 5.00 Чапаевский переулок 4.90 Онежская улица 4.90 2-я Фрезерная улица 4.90 Name: rating, dtype: float64
sns.set_palette("Set3")
fig, axs = plt.subplots(2, 1, figsize=(14, 10))
# Построение диаграммы 1
sns.barplot(ax=axs[0], x=top_price_streets_rounded.index, y=top_price_streets_rounded.values)
axs[0].set_title('ТОП-15 улиц с самой высокой средней ценой чашки кофе')
axs[0].set_xlabel('Улица')
axs[0].set_ylabel('Средняя цена чашки кофе')
axs[0].set_xticklabels(top_price_streets_rounded.index, rotation=45, ha='right') # Установка подписей улиц
# Построение диаграммы 2
sns.barplot(ax=axs[1], x=top_rating_streets.index, y=top_rating_streets.values)
axs[1].set_title('ТОП-15 улиц с самыми высокими средними рейтингами')
axs[1].set_xlabel('Улица')
axs[1].set_ylabel('Средний рейтинг')
axs[1].set_xticklabels(top_rating_streets.index, rotation=45, ha='right')
axs[1].set_ylim(4, None)
plt.tight_layout()
plt.show()
# Фильтрация кофейн в Центральном административном округе
cafes_in_central_district = df[(df['district'] == 'Центральный административный округ') & (df['category'] == 'кофейня')]
# Подсчитываем количество заведений на каждой улице
street_counts = cafes_in_central_district['street'].value_counts()
# Отбираем улицы, на которых расположено только одно заведение общественного питания
single_catering_streets = street_counts[street_counts == 1].index
# Фильтруем датафрейм по этим улицам
cafes_unique_on_street = cafes_in_central_district[cafes_in_central_district['street'].isin(single_catering_streets)]
unique_streets = cafes_unique_on_street['street'].unique()
# Выводим улицы ЦАО, на которых лишь по одной кофейне
unique_streets
array(['Миусская площадь', 'улица Бутырский Вал', 'Сущёвская улица',
'Самотёчная улица', 'улица Гиляровского', 'Ботанический переулок',
'Балакиревский переулок', 'Орловский переулок', 'Живарёв переулок',
'Большая Переяславская улица', 'Протопоповский переулок',
'Банный переулок', 'Большой Тишинский переулок',
'Большой Трёхгорный переулок', 'Васильевская улица',
'улица Большая Дмитровка', 'улица Пресненский Вал',
'улица Фадеева', 'Спиридоньевский переулок',
'Богословский переулок', 'Ермолаевский переулок', 'улица Чаянова',
'Калашный переулок', 'Большой Палашёвский переулок',
'переулок Капранова', 'Малый Патриарший переулок',
'Баррикадная улица', 'Малая Бронная улица', 'Арбатская площадь',
'Большая Садовая улица', 'Оружейный переулок',
'Никитский переулок', 'Мерзляковский переулок',
'Дегтярный переулок', 'Благовещенский переулок',
'Садовая-Триумфальная улица', 'парк Красная Пресня',
'Краснопресненская набережная', 'улица Сергея Макеева',
'улица Охотный Ряд', '1-й Неопалимовский переулок',
'Смоленская-Сенная площадь', 'Малый Афанасьевский переулок',
'Смоленская площадь', 'Колымажный переулок', 'Болотная набережная',
'улица Пречистенка', 'Померанцев переулок',
'Саввинская набережная', 'Лопухинский переулок',
'Берсеневская набережная', 'Пречистенская набережная',
'Большой Николопесковский переулок', 'Тестовская улица',
'Крымская набережная', 'Ленинский проспект', 'Токмаков переулок',
'Яковоапостольский переулок', 'Малый Казённый переулок',
'Лубянский проезд', 'Басманный тупик', 'Хитровский переулок',
'Хоромный тупик', 'Машкова улица', 'улица Чаплыгина',
'Селивёрстов переулок', 'Новорязанская улица',
'Садовая-Черногрязская улица', 'Малый Черкасский переулок',
'Уланский переулок', 'Доброслободская улица', 'Бакунинская улица',
'Верхняя Сыромятническая улица', 'Милютинский переулок',
'Орликов переулок', 'Кривоколенный переулок',
'2-й Сыромятнический переулок', 'Большая Сухаревская площадь',
'Ольховская улица', 'Верхний Сусальный переулок',
'Казарменный переулок', 'Славянская площадь', 'Никольская улица',
'Трубная площадь', 'Колокольников переулок', 'улица Рождественка',
'Неглинная улица', '1-й Колобовский переулок',
'улица Маши Порываевой', 'Абельмановская улица',
'Большой Факельный переулок', 'улица Большие Каменщики',
'Краснохолмская набережная', 'Новоспасский переулок',
'Малый Дровяной переулок', 'Новоселенский переулок',
'Руновский переулок', '3-й Кадашёвский переулок',
'Пятницкий переулок', '3-й Крутицкий переулок',
'Волгоградский проспект', 'улица Сергия Радонежского',
'улица Рогожский Вал', 'Ордынский тупик', 'Климентовский переулок',
'Космодамианская набережная', 'улица Бахрушина',
'бульвар Энтузиастов', 'Люсиновская улица',
'Лаврушинский переулок', 'Большая Пионерская улица',
'Рабочая улица', 'Москворецкая набережная',
'Большой Толмачёвский переулок', 'Большой Строченовский переулок',
'Гончарная улица', 'улица Зацепский Вал', '3-я Фрунзенская улица',
'Лужнецкая набережная', 'улица Щипок'], dtype=object)
Отобразим улицы ЦАО, на которых лишь по одной кофейне
# Создаем карту Москвы
map_7 = folium.Map(location=[moscow_lat, moscow_lng], zoom_start=10)
# Создаем пустой кластер маркеров и добавляем его на карту
marker_cluster = MarkerCluster().add_to(map_7)
# Функция для создания маркера на карте
def create_marker(row):
folium.Marker(location=[row['lat'], row['lng']], popup=f"{row['name']} {row['rating']}").add_to(marker_cluster)
# Применяем функцию к каждой строке датафрейма с кофейнями на улицах ЦАО
cafes_unique_on_street.apply(create_marker, axis=1)
# Выводим карту
map_7
ТОП-15 улиц с самыми высокими средними рейтингами:
ТОП-15 улиц с самой высокой средней ценой чашки кофе:
Аргументы для открытия кофейни в ЦАО: